⊗jsPmFVGb 218 of 505 menu

JavaScriptにおける関数内のグローバル変数

JavaScriptでは(他の言語ではほとんどの場合異なります)、 関数の外側で定義された変数は、その関数の内側から見ることができます。 このような変数をグローバル変数と呼びます。 例を見てみましょう:

let num = 1; // 関数の外側の変数 function func() { console.log(num); // 関数内から変数numが見える } func(); // 1を出力する

実際には、変数は関数の定義前ではなく、その関数の呼び出し前に定義されていれば良いのです:

function func() { console.log(num); } let num = 1; // 関数の外側の変数 func(); // 1を出力する

変数の値を変更した後、その都度関数を呼び出すと、 console.logは毎回異なる結果を出力します:

function func() { console.log(num); } let num; // 変数を宣言する num = 1; // 値1を設定 func(); // 1を出力する num = 2; // 値2を設定 func(); // 2を出力する

複数の関数がある場合、グローバル変数はそれらの各関数内で利用可能になります:

function func1() { console.log(num); } function func2() { console.log(num); } let num = 1; func1(); // 1を出力する func2(); // 1を出力する

いずれかの関数内でグローバル変数に変更が加えられると、 その変数はこの変数を使用するすべての関数で変更されます:

function func1() { console.log(num); num++; // グローバル変数を変更する } function func2() { console.log(num); } let num = 1; func1(); // 1を出力する func2(); // 2を出力する

どの関数も簡単にグローバル変数を変更できてしまうため、 その使用は捉えにくいバグの温床となります。 この理由から、スクリプト内でのグローバル変数の使用は最小限に抑えるべきです。 理想的には、全く存在しないか、最小限の数であることが望ましいです。

コードを実行せずに、コンソールに何が出力されるか判断してください:

let num = 1; function func() { console.log(num); } func();

コードを実行せずに、コンソールに何が出力されるか判断してください:

let num = 1; function func() { console.log(num); } num = 2; func();

コードを実行せずに、コンソールに何が出力されるか判断してください:

function func() { console.log(num); } let num; num = 1; func(); num = 2; func();
日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否