我想了解爲什麼this jsperf test中的片段之一似乎比其他片段慢得多。查找/兒童vs後代選擇器jQuery性能差異
這是四個片段:
$(".menu-vertical li.selected > ul.static").show().parents().show();
$('ul.root').find('li.selected').children('ul.static').show().parents().show();
$("ul.root li.selected > ul.static").show().parents().show();
$('ul.root li.selected').children('ul.static').show().parents().show();
第二個似乎是在所有瀏覽器中一致慢,我不明白爲什麼。
會有更有效的方式來獲得相同的結果,而使用查找? (或改變我的問題,爲什麼使用後發現,因爲它更慢?) –
@GeorgeKatsanos通常單選擇器執行速度更快。然而,在某些情況下,「find」可能是一顆銀彈。所以,我的答案是:這取決於。 – VisioN
在瀏覽了很多類似的問題後,似乎基準測試與假設情景並沒有多大幫助,因爲基於HTML,瀏覽器,機器等的結果不同。 –