..

Search

21) 노드의 정보

노드의 정보


노드에 대한 정보

노드에 대한 정보에는 다음과 같은 프로퍼티를 사용하여 접근할 수 있습니다.

 

1. nodeType

2. nodeName

3. nodeValue

 

이 프로퍼티들은 특별히 다른 인터페이스를 사용하지 않고도 해당 노드 정보에 직접 접근할 수 있는 방법을 제공해 줍니다.

 

다음 그림은 우리 수업에서 계속 사용하고 있는 XML 파일에서 각 노드 타입의 프로퍼티 값을 보여주는 예제 그림입니다.

 

node info


nodeType 프로퍼티

nodeType 프로퍼티는 해당 노드의 타입을 저장하는 프로퍼티로, 수정할 수 없는 읽기 전용 프로퍼티입니다.

 

대표적인 XML 노드별 nodeType 프로퍼티 값은 다음과 같습니다.

노드 타입 nodeType 프로퍼티 값

요소 노드(element node)

1

속성 노드(attribute node)

2
텍스트 노드(text node) 3
주석 노드(comment node) 8
문서 노드(document node) 9

 

다음 예제는 XML 문서 노드의 타입을 출력하는 예제입니다.

예제

var xmlObj = xmlHttp.responseXML; // 요청한 데이터를 XML DOM 객체로 반환함.

document.getElementById("text").innerHTML = // XML 문서 노드의 타입을 반환함.

"XML 문서 노드의 타입은 " + xmlObj.nodeType + "입니다.";

코딩연습 ▶

 

이번 수업의 예제에서 사용되는 programming_languages.xml 파일의 코드는 다음과 같습니다.


nodeName 프로퍼티

nodeName 프로퍼티는 해당 노드의 이름을 저장하는 프로퍼티로, 수정할 수 없는 읽기 전용 프로퍼티입니다.

노드 타입 nodeName 프로퍼티 값

문서 노드(document node)

#document

요소 노드(element node)

해당 태그 이름

속성 노드(attribute node)

해당 속성 이름
텍스트 노드(text node) #text

 

다음 예제는 XML 문서 노드의 자식 노드 중 첫 번째 요소 노드의 이름을 출력하는 예제입니다.

예제

xmlObj = xmlHttp.responseXML; // 요청한 데이터를 XML DOM 객체로 반환함.

// XML 문서 노드의 첫 번째 요소 노드를 반환함.

firstElementNode = xmlObj.documentElement.childNodes[1];

// 해당 노드의 첫 번째 요소 노드의 이름을 반환함.

document.getElementById("text").innerHTML =

"첫 번째 요소 노드의 이름은 " + firstElementNode.childNodes[1].nodeName + "입니다.";

코딩연습 ▶


nodeValue 프로퍼티

nodeValue 프로퍼티는 해당 노드의 값을 저장합니다.

노드 타입 nodeValue 프로퍼티 값

요소 노드(element node)

undefined

속성 노드(attribute node)

해당 속성의 속성값
텍스트 노드(text node) 해당 텍스트 문자열

 

다음 예제는 XML 문서 노드의 자식 노드 중 첫 번째 요소 노드의 텍스트 노드의 값을 출력하는 예제입니다.

예제

xmlObj = xmlHttp.responseXML; // 요청한 데이터를 XML DOM 객체로 반환함.

// XML 문서 노드의 첫 번째 요소 노드를 반환함.

firstElementNode = xmlObj.documentElement.childNodes[1];

// 해당 노드의 첫 번째 요소 노드의 텍스트 노드의 값을 반환함.

document.getElementById("text").innerHTML = "첫 번째 요소 노드의 텍스트 노드값은 " +

firstElementNode.childNodes[1].firstChild.nodeValue + "입니다.";

코딩연습 ▶


연습문제