如何在Javascript中将DOM节点列表转换为数组?
我有一个Javascript函数,它接受HTML节点列表,但它需要一个Javascript数组(它运行一些Array方法),我想给它提供返回DOM节点列表的输出。Document.getElementsByTagName
最初我想使用简单的东西,比如:
Array.prototype.slice.call(list,0)
这在所有浏览器中都工作正常,当然除了Internet Explorer返回错误“JScript对象预期”,因为显然方法返回的DOM节点列表不是JScript对象,不足以成为函数调用的目标。Document.getElement*
注意事项:我不介意编写Internet Explorer特定的代码,但我不允许使用任何Javascript库,例如JQuery,因为我正在编写一个要嵌入到第三方网站中的小部件,并且我无法加载会为客户端创建冲突的外部库。
我最后的尝试是迭代DOM节点列表并自己创建一个数组,但是有没有更好的方法来做到这一点?