报错
pointList.children是获取到父元素下的所有子元素集合,说这个集合没有forEach方法
pointList.children获取到的是HTMLCollection ,是一个伪数组,没有数组的方法
可以使用Array.from()进行转换(或解构赋值)
转换之后就可以使用forEach:
其他补充
如下图,是使用document.querySelectorAll() 获取到的NodeList 对象集合和 HTMLCollection 对象类似,具有forEach方法,没有其他数组方法
HTMLCollection 与 NodeList 的区别:
- HTMLCollection 与 NodeList 的区别 HTMLCollection 是 HTML 元素的集合。
- NodeList 是一个文档节点的集合。
- NodeList 与 HTMLCollection 有很多类似的地方。
- NodeList 与 HTMLCollection 都与数组对象有点类似,可以使用索引 (0, 1, 2, 3, 4, …)来获取元素。
- NodeList 与 HTMLCollection 都有 length 属性。
- HTMLCollection 元素可以通过 name,id 或索引来获取。
- NodeList 只能通过索引来获取。
- 只有 NodeList 对象有包含属性节点和文本节点。