0

これらの 2 つのセレクターの違いは何ですか? スクリプトを最適化するために 2 番目のものを使用できますか?

$('#'+idTest);  
jQuery(document.getElementById(idTest));  

http://jsperf.com/jquery-selector-speeds/4での私のテストによると、2 番目のものは 3 倍高速です ( 1,026,651 [Ops/sec]2 番目のものと比較して3,778,351 [Ops/sec])。

4

2 に答える 2

0

2番目は私にとって2倍高速です(jsperfも削除機能付き)。

両方を使用できますが、最初の方が読みやすいです。この種の最適化が必要な場合は、jQuery も使用しないでください ;)

于 2013-06-03T14:20:51.447 に答える
0

この行

$('#'+idTest);

内部では document.getElementById を使用して要素を取得します。

しかし、jQuery は'#'+idTestそのルールに対して文字列セレクターを解析する必要があります。これがオーバーヘッドの原因です。

于 2013-06-03T14:22:06.193 に答える