jQueryを使用して祖先から特定の子を選択するための最良の(最も生産的で、CPU負荷が少ない)方法は何ですか?
私たちが持っていると想像してみましょう:
<div>
<b>1</b>
<p>2</p>
<a>3</a>
<p>2</p>
</div>
そう
$('div > p')
また
$('div').children('p')
?
jQueryを使用して祖先から特定の子を選択するための最良の(最も生産的で、CPU負荷が少ない)方法は何ですか?
私たちが持っていると想像してみましょう:
<div>
<b>1</b>
<p>2</p>
<a>3</a>
<p>2</p>
</div>
そう
$('div > p')
また
$('div').children('p')
?
このjsPerf テストによると、作成したばかり$('div > p')
の速度は約 2 倍です。2 つのセレクターが返す要素に違いはないと思うので、少なくともパフォーマンスの観点からは、最初のセレクターの方が望ましいかもしれません。
$('div > p')
この場合はより良く、より高速です
これを使用すると、dom を 1 回解析してセレクターを見つけます。
1 つは div 要素を検索するため、もう 1 つは div 内の p 要素を検索するためです。