繰り返し処理の際の実行速度
例えばHTMLのa要素の内、特定複数のa要素に対しclass='foo'を加えたいとしよう。この際の処理ので速いのはどっちなんだろう
その1、置換
var b=document.body; b.innerHTML=b.innerHTML.replace(/<a (各a要素の条件)/, '<a class=foo '+RegExp.$1);
その2、for文
var as=document.getElementsByTagName('a'); var asl = as.length; for(var i=0; i<asl; i++){ if(各a要素の条件文){ as[i].className = 'hoge' } }
っとこの二つの比較
今度やってみよう。
置換だとページのほぼ全てのリフレッシュになるため遅そうだなぁ。可読性も条件によっては悪くなりそう。