1

我正在开发一个当前具有以下内容的应用程序:

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 对象,任何实现都将被绕过并简单地输出输入的对象,但我想确定一下。

或者最好确保只有我的第二个代码片段生效?

4

1 回答 1

0

感谢@Ravi的评论,我使用 jsPerf 来测试性能,结果如下:

在此处输入图像描述 http://jsperf.com/nested-jquery-testing

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

于 2013-03-20T15:47:07.743 回答