IE で実行しているときに書いた jquery スクリプトでパフォーマンスの問題が発生したため、可能な限り最適化しようとしています。for ループを使用すると、jQuery .each メソッドを使用するよりもはるかに高速です。$(this)
これにより、 for ループ内に相当するものに関する質問がありました。ループで行っていることを単純化してattr()
、主な根本的な質問に到達するときに関数を使用するだけにします。
私はそれぞれ(簡略化)でこれをやっています
var existing = $('#existing').find('div');
existing.each(function(){
console.log($(this).attr('id'));
});
そして、私はそれを for ループとして書き直そうとしました:
var existing = $('#existing').find('div');
for(var i = 0;i < existing.length;i++)
{
console.log(existing[i].attr('id'));
}
次のようなエラーがスローされます。
Uncaught TypeError: Object #<HTMLDivElement> has no method 'attr'