識別子が JavaScript 内に深く配置されるほど、読み取りと書き込みが遅くなります。したがって、関数内のローカル変数の読み取りと書き込みは常に最速ですが、グローバル変数の読み取りと書き込みは通常最も遅くなります。経験則として、クロススコープ値が関数内で複数回参照される場合は、それをローカル変数に格納します。 例: コードをコピーします コードは次のとおりです: <br>function initUI () { <br>var bd = document.body, <br>links = document .getElementByTagName(" a"), <br>i=0, <br>len=links.length; <br>while(i < len){ <BR>update(links[i ]); <BR><br>document.getElementById("go-btn").onclick = function(){ <br>start(); <BR>} <BR><br>bd.className = "active"; >} <br> この関数はドキュメントを 3 回参照し、ドキュメントはグローバル オブジェクトです。この変数を検索するプロセスでは、グローバル変数オブジェクトで最終的に見つかるまで、スコープ チェーン全体をたどる必要があります。最初にグローバル変数への参照をローカル変数に保存し、次にグローバル変数の代わりにこのローカル変数を使用することで、パフォーマンスへの影響を軽減できます。 例: コードをコピーします コードは次のとおりです: <br>function initUI () { <br>var doc=document, <br>bd = doc.body , <br> links = doc.getElementByTagName("a"), <br>i=0, <br>len=links.length; <br>while(i < len){ <BR>update(links[i ]); <BR>} <BR><BR>doc.getElementById("go-btn").onclick = function(){ <br>start(); <br><BR>bd.className = "アクティブ" ; <BR>} <br>