XML DOM 노드 정보

노드 속성: nodeName, nodeValue 및 nodeType.

예제

아래의 예제는 XML 파일을 사용합니다 books.xml.

함수 loadXMLDoc()외부 JavaScript에 위치하고 있으며, XML 파일을 로드하는 데 사용됩니다.

요소 노드의 노드 이름 가져오기
이 예제에서는 nodeName 속성을 사용하여 "books.xml"의 루트 요소의 노드 이름을 가져옵니다.
텍스트 노드에서 텍스트 가져오기
이 예제에서는 nodeValue 속성을 사용하여 "books.xml"의 첫 번째 <title> 요소의 텍스트를 가져옵니다.
텍스트 노드의 텍스트 변경
이 예제에서는 nodeValue 속성을 사용하여 "books.xml"의 첫 번째 <title> 요소의 텍스트를 변경합니다.
요소 노드의 노드 이름과 타입 가져오기
이 예제에서는 nodeName과 nodeType 속성을 사용하여 "books.xml"의 루트 요소의 노드 이름과 타입을 가져옵니다.

노드의 속성

XML 문서 객체 모델 (DOM)에서 각 노드는 다음과 같습니다객체.

객체는 메서드(기능)과 속성(객체에 대한 정보)을 가지고 있으며, JavaScript를 통해 접근하고操作할 수 있습니다.

세 가지 중요한 XML DOM 노드 속성은 다음과 같습니다:

  • nodeName
  • nodeValue
  • nodeType

nodeName 속성

nodeName 속성은 노드의 이름을 정의합니다.

  • nodeName은 읽기 전용입니다
  • 요소 노드의 nodeName은 태그 이름과 같습니다
  • 속성 노드의 nodeName은 속성의 이름입니다
  • 텍스트 노드의 nodeName은 항상 #text입니다
  • 문서 노드의 nodeName은 항상 #document입니다

TIY

nodeValue 속성

nodeValue 속성은 노드의 값을 정의합니다.

  • 요소 노드의 nodeValue는 undefined입니다
  • 텍스트 노드의 nodeValue는 텍스트 자체입니다
  • 속성 노드의 nodeValue는 속성의 값입니다

예제 1: 요소 값 가져오기

아래의 코드는 첫 번째 <title> 요소의 텍스트 노드의 값을 검색합니다:

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
txt=x.nodeValue;

결과: txt = "Harry Potter"

코드 설명:

  • loadXMLDoc()를 사용하여 "books.xml"을 xmlDoc에 로드합니다
  • 첫 번째 <title> 요소 노드의 텍스트 노드를 가져옵니다
  • txt 변수를 텍스트 노드의 값으로 설정합니다

TIY

예제 2: 요소 값 변경

아래의 코드는 첫 번째 <title> 요소의 텍스트 노드의 값을 변경합니다:

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.nodeValue="Easy Cooking";

코드 설명:

  • loadXMLDoc()를 사용하여 "books.xml"을 xmlDoc에 로드합니다
  • 첫 번째 <title> 요소 노드의 텍스트 노드를 가져옵니다
  • 텍스트 노드의 값을 "Easy Cooking"으로 변경합니다

TIY

nodeType 속성

nodeType 속성은 노드의 타입을 정의합니다.

nodeType는 읽기 전용입니다.

가장 중요한 노드 타입은 다음과 같습니다:

요소 타입 노드 타입
요소 1
속성 2
텍스트 3
비고 8
문서 9

TIY