JavaScriptのグローバル変数の説明

グローバル変数は、プログラム全体でアクセスできるように関数の外部で宣言されますが、ローカル変数はvar、関数のスコープ内でのみ使用するために関数内に格納されます。を使用せずに変数を宣言するとvar、関数内であっても、グローバルとして表示されます。

var x = 5; // global function someThing(y) { var z = x + y; console.log(z); } function someThing(y) { x = 5; // still global! var z = x + y; console.log(z); } function someThing(y) { var x = 5; // local var z = x + y; console.log(z); }

グローバル変数は、ブラウザウィンドウなど、現在のスコープのオブジェクトでもあります。

var dog = “Fluffy”; console.log(dog); // Fluffy; var dog = “Fluffy”; console.log(window.dog); // Fluffy

グローバル変数を最小化することをお勧めします。変数はプログラムのどこからでもアクセスできるため、奇妙な動作を引き起こす可能性があります。

参照:

  • var -Javascript | MDN
  • あなたはJavaScriptを知らない:スコープとクロージャ

javascriptのグローバル変数とwindow.variableの違いは何ですか?

JavaScript変数のスコープは、グローバルまたはローカルのいずれかです。グローバル変数は関数の外部で宣言され、その値はプログラム全体でアクセス/変更可能です。

変数を宣言するには(ローカルで作成するために)常にvarを使用する必要があります。そうしないと、グローバルにインストールされます。

グローバル変数は危険であるため、注意してください。ほとんどの場合、変数を宣言するためにクロージャを使用する必要があります。例:

(function(){ var myVar = true; })();

詳しくは:

  • JavaScript変数の定義とスコープのビジュアルガイド
  • JavaScript変数の定義と巻き上げの概要