varとletの違いとは?変数と定数・JavaScriptでの使い分けもプログラマーがわかりやすく解説
変数と定数とは?
image by iStockphoto
宣言の違いを見ていく前に、まずは変数と定数についておさらいしておきます。変数は「箱」に例えられることが多いです。プログラムの中で使う数値や文字列などを一時的に保持しておく箱というのが変数の説明になります。箱に対して物を自由に出し入れできるのと同じく、変数も中身を自由に書き換えることが可能です。
一方、変数と似ていますが、最初に宣言したら中身を変えることができないものが定数。一般的にプログラムの中に数値や文字列を直接書き込むことはよくないとされています。そのため、意味のある数値や文字列に名前をつけて自由に呼び出すことができるようにしたものが定数です。
// よくない例:「10」を直接記載←修正したい場合は3ヶ所要修正
let num = 10
if (num >= 10) {
console.log(“10以上”)
} else {
console.log(“10未満”)
}
// よい例:「10」を定数で宣言←1ヶ所直せば全体を1度に修正可
const MAX = 20 // 上限を指定する定数
let num = 15
if (num >= MAX) {
console.log(MAX,”より大きい”)
} else {
console.log(MAX,”未満”)
}
var:変数・過去の書き方
varは変数を宣言する昔からある書き方です。「var a」のように書いたり、中身を指定して「var a = 1」のように書きます。どちらもaという変数の宣言です。JavaScriptではvarやletを使わずに、いきなり「a = 1」と書いても動作します。ただし、わかりにくいため変数は必ず宣言するようにしましょう。
let:変数・現在の書き方
一方、letは新しい書き方です。使い方はvarと同じなので「let a」や「let a = 1」と書くことができます。現在、varは非推奨となっているので、特段の理由がない限りはletを使うのが正しいルールです。相違点は後で解説します。
const:定数・再代入できない変数
変数の次は定数です。定数の書き方もvarやletと同じように「const MAX = 10」のように書きます。中身は必ず必要です。また、定数の名前は他の変数と同じルールでつけますが、「MAX」のように大文字だけで書くことが慣例になっています。そうしなければいけないわけではないですが、変数は小文字だけ、定数は大文字だけ、と決めておくとわかりやすいです。
\次のページで「varとletは再宣言できる?letが推奨される訳とは?」を解説!/






