ぼちぼちあしあと

プログラム初心者の備忘録です。

varとletとconstの違い

varとletとconstの違いについて。

すでに良い記事がネット上にあるので、書く意味はあまりないが、ほぼ備忘録として。

techacademy.jp

を参考にしました。

というか、結果的にこの記事の前半部分とほぼ同じになっちゃいました。はい。というかオリジナリティ出すのむずくね?(開き直り)

まとめると、

varは再代入、再宣言ともに可能

letは再代入のみ可能、再宣言はエラー

constは再代入、再宣言ともにエラー

となる。

// var -> 再代入◯ 再宣言◯
var varVariable = 1;  // 初期値設定
varVariable = 2;  // 再代入
var varVariable = 3;  // 再宣言

// let -> 再代入◯ 再宣言×
let letVariable = 1;  // 初期値設定
letVariable = 2;  // 再代入
// let letVariable = 3;  // 再宣言
// 再宣言すると、"SyntaxError: Identifier 'letVariable' has already been declared"

// const -> 再代入× 再宣言×
const constVariable = 1;  // 初期値設定
// constVariable = 2;  // 再代入
// 再代入すると、"TypeError: Assignment to constant variable."
// const constVariable = 3;  // 再宣言
// 再宣言すると、"SyntaxError: Identifier 'constVariable' has already been declared"

varとletとconstの違いは他にもあり、スコープや巻き上げでググれば出てくると思う。

ただ、それについて記事にするかどうかは今のところ未定。たぶんしないと思う。しないんじゃないかな。ま、ちょっと覚悟はしておけ。(するんかい!いや、本当にしないと思う。たぶんね。)

使う優先順位としてはconst -> let (-> var)らしい。constで済むならconstで。それ以外はletでということみたいだ。

追記:変数名をlower camel case(単にcamel caseとも言うらしい)にしてみました。