0

我对使用 jQuery 很陌生,因此我相处得很好,可以得到预期的结果,但这里有一个关于性能的问题,我不确定答案:

假设预期的选择实际上是 a ,以下哪个选择器的性能最高<textarea>

  • $("textarea[id='someID']");

  • $("#someID");

提前谢谢!

4

4 回答 4

7

$("#someID");会快得多

因为它基本上使用了标准的javascriptdocument.getElementById函数

于 2012-11-07T15:06:28.610 回答
4

选择方式id始终是最快的方法,因为它使用 javascripts 自己的getElementById实现。

JSPerf 演示

在我的机器上(Win8,FF16.0.2),属性选择器慢了 93%!!

于 2012-11-07T15:07:10.030 回答
1

第二个选择器会更快,因为它直接映射到document.getElementById

你可以在这里查看结果

于 2012-11-07T15:09:51.140 回答
0

为了获得最快的结果,您必须将 js getElementById 包装在 jquery 对象中:

$(document.getElementById('myid'));

请参阅http://jsperf.com/id-selector-vs-attribute-selector/3

于 2012-11-07T15:23:17.597 回答