XML DOM cloneNode() 메서드
정의와 사용법
cloneNode() 메서드는 지정된 노드의 정확한 복사본을 생성할 수 있습니다.
이 메서드는 복사된 노드를 반환할 수 있습니다.
문법:
nodeObject.cloneNode(include_all)
매개변수 | 설명 |
---|---|
include_all | 필수입니다. 논리 매개변수가 참으로 설정되면, 복사된 노드는 원 노드의 모든 자식 노드를 복사합니다. |
반환 값
현재 노드의 복사본
설명
이 메서드는 호출된 노드의 복사본을 복사하고 반환합니다. 매개변수에 true를 전달하면 현재 노드의 모든 자식 노드를 재귀적으로 복사합니다. 그렇지 않으면 현재 노드만 복사합니다.
반환된 노드는 문서 트리에 속하지 않으며, parentNode 속성은 null입니다.
Element 노드를 복사할 때, 모든 속성이 복사됩니다. 그러나 현재 노드에 등록된 이벤트 리스너 함수는 복사되지 않습니다.
예제
모든 예제에서, 우리는 XML 파일을 사용할 것입니다 books.xml및 JavaScript 함수 loadXMLDoc()。
아래의 코드 스니펫은 첫 번째 <book> 요소를 복제하고, 그것을 노드 목록의 마지막에 추가할 수 있습니다:
xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName('book')[0];
var cloneNode=x.cloneNode(true)
;
xmlDoc.documentElement.appendChild(cloneNode);
//모든 제목 출력
var y=xmlDoc.getElementsByTagName("title");
for (i=0;i<y.length;i++)
{
document.write(y[i].childNodes[0].nodeValue);
document.write("<br />");
}
출력:
Everyday Italian Harry Potter XQuery Kick Start Learning XML Everyday Italian