XML DOM cloneNode() 메서드

정의 및 사용법

cloneNode() 메서드는 노드의 복사본을 생성하고 새로운 클론 노드를 반환합니다.

문법

nodeObject.cloneNode(deep)

파라미터

파라미터 설명
deep

부울 값.

  • true - 클론 노드, 속성 및 자식.
  • false - 클론 노드 및 속성.

기술 세부 사항

DOM 버전: Core Level 1 Node Object
반환 값: Node 객체. 클론된 노드.

예제

아래 코드는 "books.xml"을 로드하고, 첫 번째 <book> 노드를 클론하여 노드 목록의 마지막에 추가합니다:

var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
   if (this.readyState == 4 && this.status == 200) {
       myFunction(this);
   }
};
xhttp.open("GET", "books.xml", true);
xhttp.send();
function myFunction(xml) {
    var x, y, cloneNode, i, xmlDoc, txt;
    xmlDoc = xml.responseXML;
    txt = "";
    x = xmlDoc.getElementsByTagName('book')[0];
    cloneNode = x.cloneNode(true);
    xmlDoc.documentElement.appendChild(cloneNode);
    // 모든 title 출력
    y = xmlDoc.getElementsByTagName("title");
    for (i = 0; i < y.length; i++) {
        txt += y[i].childNodes[0].nodeValue + "<br>";
    }
    document.getElementById("demo").innerHTML = txt;
}

직접 시도해보세요

브라우저 지원

Chrome Edge Firefox Safari Opera
Chrome Edge Firefox Safari Opera
지원 지원 지원 지원 지원

모든 주요 브라우저가 cloneNode() 메서드를 지원합니다.