JavaScriptでは、変数宣言する場合、varを付けずにいきなり変数に代入することも可能です。

ただし、その変数はグローバル変数になってしまいます。 つまり、関数内で同じ変数を使うと、関数呼び出し元でも値が書き変わってしまうということです。


下記の例では、最後の alert表示されるxの値は、0 になります。

x = 1;    // global変数として宣言されてしまう
function Func(){
  x = 0;
  return x;
}
window.alert( x );  // => 0


ということで、変数宣言は、グローバル変数でない限り、関数内の変数も含めて、すべての変数を var もしくは let を付けて定義すると良いです。

  • var:再定義可能
  • let:再定義不可
2021/06/29