-3
関数 setupSomeGlobals() {
  // クロージャ内で終了するローカル変数
  変数番号 = 666;
  // 関数への参照をグローバル変数として保存します
  var gAlertNumber = function() { console.log(num); }
}

setupSomeGlobals();

gAlertNumber(); //動作します、なぜですか?!!

console.log(数値); //うまくいかない、GOOD

gAlertNumber() は setupSomeGlobals() 関数の外では機能しないと思っていました...

4

1 に答える 1

4

で宣言された変数var常にローカルになり、外部からアクセスすることはできません。

これをコンソールで実行すると、以前の試行でグローバル名前空間が汚染された可能性が高くなります。新しいタブを開き、コードを再実行します。

于 2012-11-27T06:07:16.657 に答える