LoginSignup
0
0

More than 3 years have passed since last update.

JavaScriptにおけるvar, letはスコープの仕組みが違う

Posted at

JavaScriptにおけるvar, letはスコープの仕組みが違う

JavaScriptにおいて使われているvar, let, constの違いについて気になって調べてみたのでメモとしてここに投稿します。

const

constは定数である。一度代入した値を変えることがないときに使う。

varとletで宣言された変数の違い。

これら二つの違いはスコープの仕組み

var

varにより宣言された変数は関数スコープを持つ。そのため関数内であればとこからでもその変数にアクセスできる。

let

letにより宣言された変数は、ブロックスコープを持つ。そのためアクセスできる範囲が宣言されたブロック内に制限されている。

let.js
if () {
  let a = 'abc';
}
console.log(a); // 宣言されたブロックの外なのでエラーとなる。

letを使うことのメリット

ブロックスコープを持ちアクセスできる範囲が制限されているため、宣言されたブロック内の外側で使用されてバグにつながるということがなくなる。


参考にしたサイト
JavaScriptの変数宣言はletにすべきか 『入門JavaScriptプログラミング』から解説

この記事の内容に間違いなどありましたらご指摘していただけると幸いです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0