大佬教程收集整理的这篇文章主要介绍了重用jQuery对象更快,但它总是更好吗?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
var $divs = $('div'); var $jq = $([1]); $divs.each(function () { $jq.context = $jq[0] = this; // ... do stuff ... });
我perf’d以上,似乎比$this = $(this)快得多;在功能的顶部.在函数内部,$jq变量有一组标准的典型jQuery方法(称为off.)(.hasClass(),.data(),. find(),…),代码按预期工作.
我想知道这里的权衡是什么;也就是说你每次都不构建新物体会失去什么?我只是失去了“历史”(即.pushStack(),. end(),. andSelf(),…)?我应该一直这样做吗?
另外,这是一个命名模式吗?我不能为我的生活弄清楚如何在谷歌上研究这个.
你失去了什么
>理智的范围:通过将对象存储在迭代的外部范围中,您将打破回调的关闭.显而易见的例子是,如果你在这里使用COnsole.log($jq),那么所有的日志条目都会引用相同的对象(循环中的最后一个对象),而这对于每次迭代都是唯一的.
>可读性:var $this = $(this)读取/理解比$jq.context = $jq [0] =这快得多.
关于“历史”,我看不出你在这里失去了什么.在任何一种情况下,你都是从一个特定的对象开始,所以你从那里进行的任何搜索都会被记录下来.
以上是大佬教程为你收集整理的重用jQuery对象更快,但它总是更好吗?全部内容,希望文章能够帮你解决重用jQuery对象更快,但它总是更好吗?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。