我使用querySelectorAll获取NodeList(实际上是一个类似于Array的对象),如下所示:
var elements = document.getElementById('something').querySelectorAll('.lazy');
然后,我尝试使用splice
删除此NodeList中的一个项目:
elements.splice(0, 1);
我收到以下错误:
elements.splice is not a function.
如何从NodeList中删除元素?或者,我应该将NodeList的每个元素存储在一个数组中并使用splice?
答案 0 :(得分:1)
NodeList
不是Array
或其子类型,因此无法访问Array.prototype.splice
。
如果您想使用splice
,可以先将其转换为数组:
var elementArray = Array.prototype.slice.call(elements);
编辑:对不起,拼接和切片混在一起。