訪問DOMの回数を減らしてjavascript性能を向上させます。


DOM要素にアクセスすると、より高価なDOM要素が変更され、ブラウザがページの幾何学的変化を再計算することになるからです。もちろん、最悪の場合はループの中で修正要素にアクセスし、特にHTML要素のセットに対してループ操作します。例えば、
 
<!-- -->
<script type="text/javascript">
function innerHTMLLoop () {
for(var count = 0; count < 15000; count++){
document.getElementById('here').innerHTML+='a';
}
}
</script>
この関数は、ページ要素の内容をループ修正する。このコードの問題は、繰り返しのたびに、この要素が2回アクセスされることである。inners HTML属性を1回読み取り、もう1回書き換える。より効率的な方法は、更新されたコンテンツをローカル変数を使用して記憶し、その後、ループ終了後に一括書込みすることである。
 
<!-- -->
<script type="text/javascript">
function innerHTMLLoop () {
var content = '';
for(var count = 0; count < 15000; count++){
content+='a';
}
document.getElementById('here').innerHTML+=content;
}
</script>
、DOMにアクセスする回数が多いほど、コードの実行速度が遅くなる。したがって、他の案が代替できる時は、DOM訪問の回数をできるだけ減らすようにします。