letを使った再代入と再定義

こんにちは、みとりです。

今回はJavaScriptの再代入と再定義について学んだのでまとめます。

まずは再定義から

let a = 'hennsu1'
let a = 'hennsu2'
conosole.log(a);

上のような赤いエラーコードがでます。

google翻訳で訳してみると

「キャッチされない SyntaxError: 識別子 ‘a’ はすでに宣言されています」

Uncaught SyntaxErrorのところがちょっとわかりづらかったのでその部分だけ翻訳すると

「キャッチされない構文エラー」

構文エラーで、その理由はaがすでに宣言されているからということでした。

再代入は

let a = 'hennsu1'
a = 'hennsu2'
conosole.log(a);

このようにエラーなくコードがコンソールに表示されました。

このことからletでは再定義不可、再代入可能ということがわかりましたね!

補足

varという変数を使うと再定義、再代入どちらも可能ですが、

varは今は非推奨となっています。

どちらもできるんだからvarの方が自由度が高くていいじゃん!と思う方もいるかもしれません。

自分も詳しくはまだ知らないので学習次第追加します。

とりあえず今はvarよりlet、constを使うようになったと覚えておきましょう。

ただ現実的には過去に作られたサイトなどを見るときにvarを見る機会はあります。

まとめ

今は再定義不可!とだけ覚えましょう。

それではまた!

この記事を書いた人

ともひろ