一部のプログラムのようなプログラミング言語では、ブラケット内の各コードには独自のスコープがあり、変数はブロックスコープ(ブロックスコープ)の宣言の外に表示されません。範囲。 JavaScriptの代わりに、関数スコープが使用されます。変数は、関数本体の本体と、変数によってネストされた関数本体の関数で定義されます。 次のコードでは、さまざまな位置で定義されているI、J、Kは、同じ役割で同じ役割で定義されています
次のようにコードコードをコピーします。
関数テキスト(o)
{{
var i = 0;
アラート(typeof o);
if(typeof o == "string")
{{
var j = 0;
for(var k = 0; k <10; k ++)
{{
アラート(k); //出力0-9
}
アラート(k);
}
アラート(j);
}
JavaScriptの関数アクションドメインとは、関数内で宣言されたすべての変数が関数本文で常に表示されることを指します。興味深いことに、これは変数が宣言の前に入手可能であることを意味します。 JavaScriptの特性は、声明、つまり、JavaScriptの関数によって宣言された関数のすべての変数(割り当てには関与していない)と有益に言及されています。次のコードを見てください
次のようにコードコードをコピーします。
var global = "globas";
functionGlobals()
{{
アラート(グローバル);
var global = "hello qdao";
アラート(グローバル); // hello qdao
}
関数範囲の特性により、ローカル変数は常に関数本体全体で定義されます。つまり、関数本体内の変数は同じ名前のグローバル変数をカバーします。したがって、プログラムがVARステートメントに実行されると、ローカル変数は本当に関連しています。上記のプロセスは次のとおりです。同僚の変数は元の位置にとどまります
次のようにコードコードをコピーします。
var global = "globas";
functionGlobals()
{{
var Global;
アラート(グローバル);
global = "hello qdao";
アラート(グローバル); // hello qdao
}