363得票15回答
如何快速将JavaScript的NodeList转换为数组?

之前在这里回答的问题说这是最快的方法: //nl is a NodeList var arr = Array.prototype.slice.call(nl); 在我的浏览器上进行基准测试后,我发现它比这个要慢3倍以上。 var arr = []; for(var i = 0, n; ...

173得票7回答
在ES6中,过滤或映射节点列表

什么是在ES6中过滤或映射nodelist的最有效方法? 根据我的阅读,我会使用以下选项之一:[...nodelist].filter 或者Array.from(nodelist).filter 你会推荐哪一个?还有没有更好的方法,比如不涉及数组?

162得票14回答
JavaScript中的[].forEach.call()是什么意思?

我正在查看一些代码片段,发现有多个元素通过应用于一个空数组的forEach来调用一个函数来遍历节点列表。 例如,我有如下代码:[].forEach.call( document.querySelectorAll('a'), function(el) { // whatever with...

83得票2回答
何时NodeList是实时的,何时是静态的?

来自 MDN 关于 NodeList 的说明: 在某些情况下,NodeList 是一个实时集合,这意味着 DOM 中的更改会反映在该集合中。例如,Node.childNodes 是实时的: var parent = document.getElementById('parent'); ...

49得票2回答
JavaScript如何遍历NodeList

我正在寻找一种最佳方法来遍历NodeList,除了length属性。我目前正在使用:var foo = document.querySelectorAll('[id^=foo_id]') console.log(foo) 返回的NodeList包含所有必需的元素以及长度的最后一个条目: 0...

43得票8回答
JavaScript中的NodeList对象

有人能告诉我NodeList是什么类型的对象吗?我读到它是一个类似数组的对象,可以通过方括号表示法访问,例如var a = someNode.childNode[0];。既然我们只能通过方括号表示法来访问对象的属性,而且我们不能有独立的索引属性,那么这怎么可能呢?

41得票7回答
Typescript,“NodeListOf<Element>”不是数组类型或字符串类型。

将我的JS转换为TS严格模式。以下语法在我看来没问题,但是在for循环中对allSubMenus出现了TS的错误提示:[ts] Type 'NodeListOf&lt;Element&gt;' is not an array type or a string type. 我错过了什么?func...

41得票8回答
addEventListener在NodeList上的应用

NodeList支持addEventListener吗?如果不支持,那么向NodeList的所有节点添加EventListener的最佳方法是什么?目前我正在使用如下代码片段,是否有更好的方法?var ar_coins = document.getElementsByClassName('co...

40得票5回答
如何将节点数组转换为静态NodeList?

注意:在假设此问题是重复的之前,请查看本问题底部的一小节,解释为什么其他类似问题没有提供我所寻找的答案。 我们都知道将NodeList转换为数组很容易,并且有许多方法可以做到这一点:[].slice.call(someNodeList) // or Array.from(someNode...

27得票11回答
JavaScript NodeList

有没有办法将两个通过document.getElementsByTagName调用返回的NodeList连接起来? 比如,我有以下代码:var inputs = documentElement.getElementsByTagName('input'); var selects = docu...