核心结论
HTMLCollection 和 NodeList 都是浏览器提供的类数组集合,但成员类型、产生接口以及是否随文档变化而更新并不相同。HTMLCollection 只包含元素节点,常见实例通常是动态集合;NodeList 可以包含元素、文本、注释等不同节点,但它既可能动态,也可能静态。典型地,document.querySelectorAll() 返回静态 NodeList,而 Node.childNodes 返回动态 NodeList,所以不能简单记忆为“NodeList 永远静态”。
底层机制
document.getElementsByTagName()、