HTMLCollection 和 NodeList 有什么区别
HTMLCollection 和 NodeList 有什么区别
Node 和 Element
- DOM 是一棵树,所有节点都是 Node
- Node 是 Element 的父类
- Element 是其他 HTML 元素的父类,如 HTMLDivElement
HTMLCollection 和 NodeList
- HTMLCollection 是 Element 的集合
- NodeList 是 Node 集合
<div id="outer"><p>hello</p><b>world</b><!--注释--></div>
<script>
const ele = document.getElementById('outer');
console.log(ele.children) // HTMLCollection(2) [p, b]
console.log(ele.childNodes) // NodeList(3) [p, b, comment]
</script>
总结
NodeList 会包含 Text、Comment 节点 和 HTMLCollection