Jqueryセレクタ性能発見
531 ワード
Jqueryのfindメソッドはセレクタ全体への伝達よりも遅い(コンテキスト差が1層以内)と考えられていたが,この仮定をしたのはquerySelectorAllなどのオリジナルメソッドがjsよりも速く実現するためである.今日はそうではないことに気づいた.テストにより、chromeでは、このセグメントコードは次の結果を生成します.
var mv = $('#container');
console.time('a');
for(var i = 0; i < 5000; i ++) {
$('#container a');
}
console.timeEnd('t');
console.time('t');
for(var i = 0; i < 5000; i ++) {
mv.find('a');
}
console.timeEnd('t');
a: 302.646ms
a: 131.653ms