$("#content .abc") と $("#content").find(".abc") ではどちらの方が効率的ですか?
天蓬老师
天蓬老师 2017-06-26 10:50:26
0
4
967

$(“#content .abc”) と $(“#content”).find(“.abc”) はどちらが効率的ですか?

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全員に返信(4)
女神的闺蜜爱上我

$("#content").find(".abc") .find() メソッドはブラウザのネイティブ メソッド (getElementById、getElementByName、getElementByTagName など) を呼び出すため、高速です。 $("#content .abc") よりもはるかに高速です
jQuery セレクターの効率については、パフォーマンス分析 http://blog.csdn.net/cxl44490... を参照してください。

いいねを押す +0
Ty80

リーリー

いいねを押す +0
滿天的星座

テスト結果は、find の方が速いということです
その理由は、jQuery が内部的に使用するさまざまなセレクター チェーンの選択順序が右から左であるためです。そのため、このステートメントは最初に .abc を選択し、次に親要素 #content を 1 つずつフィルターして除外します。 1 つは、結果としてはるかに遅くなります。
同時に、.find() メソッドはブラウザーのネイティブ メソッド (getElementById、getElementByName、getElementByTagName など) を呼び出すため、高速になります。
2 つを比較すると、当然、検索の方がはるかに高速です。

以下はテストです: https://jsperf.com/jqueryfind...

いいねを押す +0
滿天的星座

2番目の方が速い

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート