javascript - Ist das dritte Beispiel hier nicht auch ein Array? (aus es6 geschrieben von Ruan Yifeng)
某草草2017-06-12 09:29:50
0
6
761
Ich weiß, dass document.querySelectorAll('p') eine NodeList erhält, aber sie wurde mit ... dekonstruiert und dann in [] eingefügt. Was es erhält, ist ein Array, oder? //Titel aktualisiert. . Es scheint, dass niemand versteht, was ich meine. .
返回的是一个NodeList对象,不是数组,只是有一些数组有的方法和属性,所以是类似数组
更新:
你修改问题之后,其实觉得你的想法是对的,可能这里是阮老师写的不准确,要是代码是这样就没有问题了:
你可以在底下给他留言,他看到会改的。
...
是spread
操作符,用于展开数组或类数组对象。将每一个项展开到一个新数组里,所以这里返回值是所有p的数组对象。
document.querySelectorAll
所返回的是一个类数组对象。类数组不是数组类型的实例,所以你不能用对其用数组的方法,比如splice
,map
等。转化正真正的数组后就可以使用这些方法了。是啊 document.querySelectorAll()的结果就是数组形式的。取id返回的也是数组 你可以自己打印看
querySelectAll返回的是NodeList,不是数组,是一个类数组。
他这里是把节点生成了一个新数组返回过去,是数组没错。我猜他这里是说的nodelist这样一个类数组结构。
不是数组。

这玩意叫
nodelist
你看看mdn吧,Nodelist
==========
嗯,对,是数组了。所以题主想问什么。