使用 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')
,它的速度大约是原来的两倍。我认为这两个选择器在返回的元素上没有什么不同,所以第一个可能更可取,至少从性能的角度来看是这样。
$('div > p')
在这种情况下更好更快
有了这个,您将解析 dom 一次以找到您的选择器。
在另一种情况下,您将对其进行两次解析:一次查找 div 元素,一次查找 p 元素到 div