JavaScript var let 違い - JavaScriptにおける変数のスコープとは?

JavaScript var 型 / javascript / function / variables / scope / var

javascriptでの変数のスコープはどうなっていますか?関数の中と外では同じスコープを持つのでしょうか?あるいは、それは問題ではないのでしょうか。また、変数がグローバルに定義されている場合、変数はどこに格納されますか。

John Slegers



Answer #1

一例を挙げてみます。

<script>

var globalVariable = 7; //==window.globalVariable

function aGlobal( param ) { //==window.aGlobal();
                            // paramはこの関数でのみアクセス可能です
  var scopedToFunction = {
    //この関数の外部からはアクセスできません

    nested : 3 //アクセス可能:scopedToFunction.nested
  };

  anotherGlobal = {
    // `var`がないためグローバル
  }; 

}

</script>