84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
如上图,$("span")获取到NodeList之后,这个类数组对象分别调用数组方法sort()和reverse(),但是为嘛一个报错,一个不报错?
欢迎选择我的课程,让我们一起见证您的进步~~
$(……)返回的并不是NodeList,而是个类似数组的jQuery对象实例
$(……)
NodeList
jQuery
reverse()和sort()方法都是Array类才有的
reverse()
sort()
Array
jquery把sort指向了Array的sort,所以你可以直接在jQuery对象实例中使用sort()方法
jquery
sort
// For internal use only. // Behaves like an Array's method, not like a jQuery method. push: push, sort: arr.sort, splice: arr.splice
jquery对象实例并未引用reverse,所以你不能使用这个方法
reverse
想要使用reverse方法,直接引用Array原型里面的方法,然后改变上下文就行了。
Array.prototype.reverse.call($(……))
严格的说,$("span")获取到的并非NodeList,仅仅是一个jQuery对象,并不具有reverse方法
$(……)
返回的并不是NodeList
,而是个类似数组的jQuery
对象实例reverse()
和sort()
方法都是Array
类才有的jquery
把sort
指向了Array
的sort
,所以你可以直接在jQuery
对象实例中使用sort()
方法jquery
对象实例并未引用reverse
,所以你不能使用这个方法想要使用
reverse
方法,直接引用Array
原型里面的方法,然后改变上下文就行了。严格的说,$("span")获取到的并非NodeList,仅仅是一个jQuery对象,并不具有reverse方法