性能命中多少是$($('selector'))?

时间:2013-03-20 15:19:30

标签: jquery performance

我正在开发一个目前有类似内容的应用程序:

var selector = '.selector';
$(selector).methodA();
$(selector).methodB();
//.....
$(selector).methodZ();

为了提高性能,我将selector更改为jQuery对象,例如:

var selector = $('.selector');
selector.methodA();
selector.methodB();
//.....
selector.methodZ();

然而,由于这是一个非常大的应用程序,因此必须分阶段更改,这意味着在完全完成之前将会有以下代码:

var selector = $('.selector');
selector.methodA();
$(selector).methodB();
//.....
$(selector).methodZ();

这最后一段代码片段的性能是否比我的第一段代码片段更好?

我的猜测是,由于对象已经是一个jQuery对象,任何实现都将被绕过并简单地输出输入的对象,但我想确定一定。

或者最好只确保我的第二个代码段上线?

1 个答案:

答案 0 :(得分:0)

感谢@Ravi's comment我使用了jsPerf来测试性能,并且结果如下:

enter image description here http://jsperf.com/nested-jquery-testing

因此第3次测试实际上比第1次更快。