javascriptでローカル変数にグローバル変数を作成できるのはなぜですか?
例javascript変数スコープ
function f() { x=10; }
function g() { print(x); }
f(x);
g(x);
javascriptでローカル変数にグローバル変数を作成できるのはなぜですか?
例javascript変数スコープ
function f() { x=10; }
function g() { print(x); }
f(x);
g(x);
なぜローカルコードでグローバル変数を作成できるのですか?
完全な言語ではないためです。
キーワードの範囲を制限するには、var
キーワードを使用します。
変数宣言の前にvar
を指定する必要があると思います。
設計ミス。この欠陥は、ES5 strictモードでは削除されています。 –
どうしてですか?私はそれが命名の競合を起こすかもしれないと思いますが、それが問題であればより良い変数名を与えるべきです。 –
上記の私の声明のソース:http://es5.github.com/#C(第4の箇条書き) –