Document
객체에 구현되어 있다.console.dir
: 객체로 볼 수 있다.console.dir()
를 사용한다.document.createElement()
append
: ParentNode.append()
메소드는 ParentNode
의 마지막 자식 뒤에 삽입한다. 자식 노드 맨 뒤에 추가하는 것.
appendChild
: Node.appendChild()
메소드는 한 노드를 특정 부모 노드의 자식 노드 리스트 중 마지막 자식으로 붙인다.
prepend
: ParentNode.prepend()
메소드는 ParentNode
의 첫 자식 노드 앞에 삽입한다. 자식 노드 맨 앞에 추가하는 것.
document.querySelector(#id or .class or tag)
: 해당하는 element 중 첫 번째 element를 조회한다. 결과가 없다면 null
document.querySelectorAll(#id or .class or tag)
: 해당하는 element 모두를 Array-like Object 형태로 가져온다. document.getElementById('id')
: id로 조회해서 해당 element를 가져온다.(옛날 방식) document.getElementsByTagName('tag')
: tag로 조회해서 해당 element 모두를 Array-like Object 형태로 가져온다.(옛날 방식) innerHTML
: 해당 element에 값을 설정할 수 있고, element안에 값을 가져올 수도 있다. 다만, 값을 설정할 때 html tag를 같이 설정하면 parsing이 되어 해킹의 위험이 있으므로 innerHTML
을 쓰기보단 textContent
를 쓰는게 좋다.
Element.textContent
: 해당 element에 text를 추가할 수 있다.
Element.classList.add()
: 해당 element에 class를 추가할 수 있다.
Element.setAttribute(name,value)
: 해당 element에 name
으로 id or class를 지정할 수 있고 name
에 id or class의 이름을 value
로 지정해준다.
element.remove
: 해당 element를 삭제한다.element.removeChild(자식 element)
: 해당 element의 자식 element를 삭제한다.NodeList
는 DOM element를 접근하고 조작하는데 사용되는 노드의 집합이다.array
는 JS에서의 배열이다.NodeList
와 array
는 각각 그들만의 프로토타입, 메서드, 속성을 갖고 있다.Array.from() Method
// create a `NodeList` object
const divs = document.querySelectorAll('div');
// convert `NodeList` to an array
const divsArr = Array.from(divs);
Spread Operator
// create a `NodeList` object
const divs = document.querySelectorAll('div');
// convert `NodeList` to an array
const divsArr = [...divs];
children
: element의 속성이다. 모든 element가 갖고 있는 속성이다.ParentNode.children
: ParentNode의 속성 children은 호출된 요소의 모든 자식 노드의 elements를 담고있는 실시간 HTMLCollection을 반환합니다.childNodes
: Node의 속성이다. 주어진 요소의 자식 노드 모음(collection)을 반환let el = document.createElement("div");
el.textContent = "foo";
el.childNodes.length === 1; // Contains a Text node child.
el.children.length === 0; // No Element children.