セレクタをどのように表現するかによってパフォーマンスが大きく変化します。たとえば、まったく同じ要素を選択し、これらの2つのセレクタ、見て:そこに1つのコールだけですが、実際には、私はAを見つけることだと速くなるように)私はBに期待jQueryセレクタのパフォーマンス
A) someTableRow.find("td.someColumnClass").find("span.editMode").find("input")
B) someTableRow.find("td.someColumnClass span.editMode input")
)の周りを実行8倍速くなります。なぜ誰も洞察力を持っていないのですが?ありがとう
ありがとうcrescentfresh、意味があります。私たちは実際に1.2.6から1.3.2に移動しました。なぜなら、これまでにまともに速いセレクタが遅くなった(ほとんどが速い)理由が混乱していました。質問 - すばやく、各ポイントのコンテキストを渡すか、連鎖したfind()呼び出しを使用していますか? – JonoW
これらは事実上同等です。 $( 'foo'、 'bar')は実際にjQueryの腹の中で$( 'bar')find( 'foo')にリルートされます。 find()を呼び出すと明示的に2つのCPUサイクルが節約されますが、何も点滅しないと思います。あなたのチームにとって最も読みやすいものを実行してください。私は非常に読みやすいと思う) –
クール、私はfind()が私にとってより直感的だと感じています。 – JonoW