关于获取到的DOM集合是伪数组的问题记录 ***children.forEach is not a function

报错

pointList.children是获取到父元素下的所有子元素集合,说这个集合没有forEach方法
在这里插入图片描述
pointList.children获取到的是HTMLCollection ,是一个伪数组,没有数组的方法
![在这里插入图片描述](https://img-blog.csdnimg.cn/00770f87688f40e6a43fad3cfbb4252d.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAQV9CcmF2ZQ==,size_13,color_FFFFFF,t_70,g_se,x_16
可以使用Array.from()进行转换(或解构赋值)
转换之后就可以使用forEach:
在这里插入图片描述

其他补充

如下图,是使用document.querySelectorAll() 获取到的NodeList 对象集合和 HTMLCollection 对象类似,具有forEach方法,没有其他数组方法
在这里插入图片描述

HTMLCollection 与 NodeList 的区别:
  1. HTMLCollection 与 NodeList 的区别 HTMLCollection 是 HTML 元素的集合。
  2. NodeList 是一个文档节点的集合。
  3. NodeList 与 HTMLCollection 有很多类似的地方。
  4. NodeList 与 HTMLCollection 都与数组对象有点类似,可以使用索引 (0, 1, 2, 3, 4, …)来获取元素。
  5. NodeList 与 HTMLCollection 都有 length 属性。
  6. HTMLCollection 元素可以通过 name,id 或索引来获取。
  7. NodeList 只能通过索引来获取。
  8. 只有 NodeList 对象有包含属性节点和文本节点。
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值