JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

JavaScript変数の有効期間とは?ローカル変数とグローバル変数の違いを解説

JavaScript変数の有効期間とは?

JavaScriptにおける変数の有効期間(ライフタイム)は、変数が宣言された時点から始まります。

var rank;

このように宣言された変数は、宣言以降コード内で利用できるようになります。そして、変数の寿命は、それがローカル変数であるかグローバル変数であるかによって大きく異なります。

ローカル変数の有効期間

ローカル変数は、定義された関数の内部でのみ参照可能です。また、関数の引数(パラメータ)も常にその関数に固有のローカル変数として扱われます。

関数の実行が完了すると、その関数内で宣言されたローカル変数は自動的に破棄されます。

グローバル変数の有効期間

グローバル変数はグローバルスコープを持つため、JavaScriptコード内のどこからでも定義・アクセスできます。

グローバル変数は、Webブラウザが閉じられたときに破棄されます。同じブラウザウィンドウ内で新しいページを読み込んだ場合でも変数は残るとされますが、現代のブラウザではページ遷移のたびにJavaScriptの実行環境が再構築されるため、グローバル変数が次のページへ引き継がれない点には注意が必要です。

サンプルコードで学ぶ変数のスコープ

以下のコードを実行すると、JavaScriptにおける変数のスコープ(有効範囲)の仕組みを実際に確認できます。

<html>
   <body onload = checkscope();>
      <script>
         <!--
         var myVar = "global";  // グローバル変数を宣言
         function checkscope( ) {
            var myVar = "local"; // ローカル変数を宣言
            document.write(myVar);
         }
         //-->
      </script>
   </body>
</html>

この例では、まずグローバル変数として myVar = "global" を宣言し、次に関数 checkscope() の内部で同じ名前のローカル変数 myVar = "local" を宣言しています。

関数内ではローカル変数が優先されるため、画面には「local」と表示されます。このように、同じ名前の変数でもスコープによって扱いが変わる点を押さえておきましょう。

まとめ

  • 変数の有効期間は、宣言された時点から始まる
  • ローカル変数は、定義された関数内でのみ有効で、関数の実行終了とともに破棄される
  • グローバル変数は、コード内のどこからでもアクセスでき、ブラウザが閉じられるまで存在する
  1. JavaScript DOMとは?基本の仕組みと要素の取得方法をわかりやすく解説

    JavaScriptのDOM(Document Object Model:ドキュメントオブジェクトモデル)は、Webページ上のHTML要素を表現する仕組みです。DOMはインターフェースとして機能し、ページのコンテンツやスタイルを変更することで、Webページを自由に操作できるようにします。 DOMにアクセスするには、Webページ上で右クリックして「検証(Inspect)」を選択します。すると画面の右側または左側にパネルが表示され、現在閲覧しているページのHTML要素を確認できます。要素にマウスカーソルを合わせると、ページ上の該当部分がハイライトされるため、どの要素がページのどのセクションに対応

  2. Pythonのグローバル変数とローカル変数の違いとは?わかりやすく解説

    Pythonにおいて、グローバル変数とはプログラム全体(モジュール内のどこからでも)アクセスできる変数のことです。一方、ローカル変数は特定のスコープ内、たとえば関数定義の中でのみアクセスできる変数であり、関数内で一時的に使用される変数などがこれに該当します。コード例以下のコードを見てみましょう。q = I love coffee # グローバル変数 def f(): p = Me Tarzan, You Jane. # ローカル変数 print(p) f() print(q)実行結果このコードを実行すると、次のような出力が得られます。Me Tarzan, You Jan