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