NODE
Last updated
Last updated
DOM์ ๋ ธ๋๋ผ๊ณ ๋ถ๋ฆฌ๋ ๊ณ์ธต์ ๋จ์์ ์ ๋ณด๋ฅผ ์ ์ฅํ๊ณ ์๋ค. DOM์ ์ด๋ฌํ ๋ ธ๋๋ค์ ์ ์ํ๊ณ , ๊ทธ ์ฌ์ด์ ๊ด๊ณ๋ฅผ ์ค๋ช ํด์ฃผ๋ ์ญํ ์ ํ๋ค.
HTML์ ์ ๋ณด๋ ๋ ธ๋ ํธ๋ฆฌ์ ์ ์ฅ๋๋ฉฐ, ๋ ธ๋ ํธ๋ฆฌ๋ ๋ ธ๋๋ค์ ์งํฉ์ผ๋ก ๋ ธ๋ ๊ฐ์ ๊ด๊ณ๋ฅผ ๋ณด์ฌ์ค๋ค.
๋ ธ๋ ํธ๋ฆฌ๋ ์ต์์ ๋ ๋ฒจ์ธ ๋ฃจํธ ๋ ธ๋(root node)๋ก ๋ถํฐ ์์ํด, ๊ฐ์ฅ ๋ฎ์ ๋ ๋ฒจ์ธ text ๋ ธ๋๊น์ง ๋ด๋ ค๊ฐ๋ค. JavaScript์์๋ DOM์ ์ด์ฉํ์ฌ ๋ชจ๋ ๋ ธ๋์ ์ ๊ทผํ ์ ์๋ค.
๋ ธ๋ | ์ค๋ช |
๋ฌธ์ ๋ ธ๋(document node) | HTML ๋ฌธ์ ์ ์ฒด๋ฅผ ๋ํ๋ด๋ ๋ ธ๋ |
์์ ๋ ธ๋(element node) | ๋ชจ๋ HTML ์์๋ ์์ ๋ ธ๋์ด๋ฉฐ, ์์ฑ ๋ ธ๋๋ฅผ ๊ฐ์ง ์ ์๋ ์ ์ผํ ๋ ธ๋์ด๋ค. |
์์ฑ ๋ ธ๋(attribute node) | ๋ชจ๋ HTML ์์์ ์์ฑ์ ์์ฑ ๋ ธ๋์ด๋ฉฐ, ์์ ๋ ธ๋์ ๊ดํ ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ์๋ค.ํ์ง๋ง ํด๋น ์์ ๋ ธ๋์ ์์ ๋ ธ๋(child node)์๋ ํฌํจ๋์ง ์๋๋ค. |
ํ ์คํธ ๋ ธ๋(text node) | HTML ๋ฌธ์์ ๋ชจ๋ ํ ์คํธ๋ ํ ์คํธ ๋ ธ๋์ด๋ค. |
์ฃผ์ ๋ ธ๋(comment node) | HTML ๋ฌธ์์ ๋ชจ๋ ์ฃผ์์ ์ฃผ์ ๋ ธ๋์ด๋ค. |
[tree ์๋ฃ๊ตฌ์กฐ] ๋ฅผ ์ฐธ์กฐํ๋ฉด ๊ด๊ณ๋ฅผ ๋ ์ ์ดํดํ ์ ์๋ค.
getElementsByTagName()
๋ฉ์๋๋ฅผ ์ด์ฉํ๋ ๋ฐฉ๋ฒ
๋ ธ๋๊ฐ์ ๊ด๊ณ๋ฅผ ์ด์ฉํ์ฌ ์ ๊ทผํ๋ ๋ฐฉ๋ฒ
parentNode : ๋ถ๋ชจ ๋ ธ๋
childNodes : ์์ ๋ ธ๋ ๋ฆฌ์คํธ
firstChild : ์ฒซ ๋ฒ์งธ ์์ ๋ ธ๋
lastChild : ๋ง์ง๋ง ์์ ๋ ธ๋
nextSibling : ๋ค์ ํ์ ๋ ธ๋
previousSibling : ์ด์ ํ์ ๋ ธ๋
nodeName : ๋ ธ๋ ๊ณ ์ ์ ์ด๋ฆ์ ์ ์ฅํ๋ค. ์ฝ๊ธฐ ์ ์ฉ property(์์ ๋ถ๊ฐ)
๋ ธ๋ | ํ๋กํผํฐ ๊ฐ |
๋ฌธ์ ๋ ธ๋(document node) | #document |
์์ ๋ ธ๋(element node) | ํ๊ทธ ์ด๋ฆ (์๋ฌธ์๋ก ๋๋ฌธ์) |
์์ฑ ๋ ธ๋(attribute node) | ์์ฑ ์ด๋ฆ |
ํ ์คํธ ๋ ธ๋(text node) | #text |
์์ ๋ ธ๋์ nodeName property๋ ์ธ์ ๋ ํด๋น HTML ์์์ ํ๊ทธ ์ด๋ฆ์ ๋๋ฌธ์๋ก ์ ์ฅํ๋ค.
nodeValue : ๋ ธ๋์ ๊ฐ์ ์ ์ฅํ๋ค.
๋ ธ๋ | ํ๋กํผํฐ ๊ฐ |
์์ ๋ ธ๋(element node) | undefined |
์์ฑ ๋ ธ๋(attribute node) | ํด๋น ์์ฑ์ ์์ฑ๊ฐ |
ํ ์คํธ ๋ ธ๋(text node) | ํด๋น ํ ์คํธ ๋ฌธ์์ด |
nodeType : ๋ ธ๋ ๊ณ ์ ์ ํ์ ์ ์ ์ฅํ๋ค. ์ฝ๊ธฐ์ ์ฉ(์์ ๋ถ๊ฐ)
๋ ธ๋ | ํ๋กํผํฐ ๊ฐ |
์์ ๋ ธ๋(element node) | 1 |
์์ฑ ๋ ธ๋(attribute node) | 2 |
ํ ์คํธ ๋ ธ๋(text node) | 3 |
์ฃผ์ ๋ ธ๋(comment node) | 8 |
๋ฌธ์ ๋ ธ๋(document node) | 9 |
์ด property๋ค์ ํน๋ณํ ๋ค๋ฅธ ์ธํฐํ์ด์ค๋ฅผ ์ด์ฉํ์ง ์๊ณ ๋, ํด๋น ๋ ธ๋์ ์ ๋ณด์ ์ง์ ์ ๊ทผํ ์ ์๋ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๋ค.