首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jquery / javascript: jQuery.fn.reverse = [].reverse;

jquery / javascript: jQuery.fn.reverse = [].reverse;
EN

Stack Overflow用户
提问于 2013-04-03 15:54:26
回答 2查看 2K关注 0票数 6

这个小的jQuery插件:

代码语言:javascript
复制
jQuery.fn.reverse = [].reverse;

它怎麽工作?反转函数的对象绑定数组原型在哪里?我真的不明白它是如何在幕后工作的。一些解释会更好。问候

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-04-03 15:59:52

jQuery.fnjQuery.prototype的别名。

因此,这个插件将数组的reverse函数添加到使用new JQuery()创建的所有对象中,这就是使用$构建的集合的情况。

它之所以有效,是因为reverse函数的specification使其适用于任何具有长度和索引属性的对象。您可以使用以下命令进行测试:

代码语言:javascript
复制
var a = {0:'a', 1:'b'};
a.length = 2;
console.log([].reverse.call(a)); // it works
票数 5
EN

Stack Overflow用户

发布于 2013-04-03 15:58:23

[].reverse是数组原型中的.reverse()函数。jQuery正在利用这一点,而不是定义自己的。

[]创建了一个空数组,从它引用.reverse函数是完全有效的。

现在,在jQuery中,如果jQuery对象包含一个元素集合,就可以执行$.reverse()

票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15781794

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档