본문 바로가기
Web/Java Script

[JS] Node 객체

by _eunji_ 2022. 4. 14.

노드(Node)란?

HTML DOM에서 정보를 저장하는 계층적 단위이다.

노트 트리는 노드들의 집합으로 노드 간 관계를 나타낸다.

자바스크립트에선 HTML DOM을 이용하여 노드 트리에 포함된 모든 노드에 접근할 수 있다.


 

노드 간 관계

- 노드 트리의 모든 노드는 계층적 관계

<!DOCTYPE html>
<html lang="en">
<head>
    <title>Document</title>
</head>
<body>
    
</body>
</html>

 

 

노드 종류

  • 문서 노드
  • 요소 노드
  • 주석 노드
  • 속성 노드
  • 텍스트 노드

문서 노드(document node)

- HTML 문서 전체를 나타내는 노드

 

요소 노드(element node)

- 모든 HTML 요소는 요소 노드

- 속성 노드를 가질 수 있는 유일한 노드

 

주석 노드(comment node)

- HTML 문서의 모든 주석은 주석 노드

 

속성 노드(attribute node)

- 모든 HTML 요소의 속성은 속성 노드

- 요소 노드에 관한 정보를 가짐

- 하지만 해당 요소 노드의 자식 노드(child node)에는 포함되지 않음

 

텍스트 노드(text node)

- HTML 문서의 모든 텍스트는 텍스트 노드

 

 

노드의 값

- 노드에 대한 정보는 다음과 같은 프로퍼티를 통해 접근

  • nodeName 
  • nodeValue 
  • nodeType 
// HTML 문서의 모든 자식 노드 중에서 첫번째 노드의 이름 선택
document.childNodes[0].nodeName;

// 아이디가 "id"인 요소의 첫 번째 자식 노드의 노드 값 선택
document.getElementById("id").firstChild.nodeValue;

// 아이디가 "id"인 요소의 첫 번째 자식 노드의 타입 선택
document.getElementById("id").firstChild.nodeType;

 

 

댓글