varとletとconstの違い
varとletとconstの違いについて。
すでに良い記事がネット上にあるので、書く意味はあまりないが、ほぼ備忘録として。
を参考にしました。
というか、結果的にこの記事の前半部分とほぼ同じになっちゃいました。はい。というかオリジナリティ出すのむずくね?(開き直り)
まとめると、
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とも言うらしい)にしてみました。