为了账号安全,请及时绑定邮箱和手机立即绑定

将 NodeList 视为数组的正确方法?

将 NodeList 视为数组的正确方法?

手掌心 2021-08-26 20:14:29
好的,所以我知道使用 document.querySelectorAll(一个 NodeList)结果的“正确”方法的传统智慧是通过使用以下内容将其转换为数组:Array.prototype.slice.call(elements)但是,我一直在尝试将它们直接用作类数组对象,并且它似乎可以在以下结构中使用:document.querySelectorAll('selector').forEach(elem => console.log(elem.tagName));我的问题是,使用这种更方便的语法会产生意想不到的后果吗?
查看完整描述

2 回答

?
长风秋雁

TA贡献1757条经验 获得超7个赞

根据规范,querySelectorAll返回 a NodeList,它只保证拥有它的元素和length属性。因此,即使您的浏览器确实支持这一点,这也是一个坏主意。如果您正在寻找更方便的语法,您可以使用Array.from或 展开运算符:


Array.from(document.querySelectorAll('selector')).forEach()

[...document.querySelectorAll('selector')].forEach()


查看完整回答
反对 回复 2021-08-26
  • 2 回答
  • 0 关注
  • 309 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信