コース一覧
/
JavaScript 入門
/

変数とデータ型

定数を使おう(const)

値が変わらないデータには const を使って定数として宣言できます。const と let の違いや、使い分けの指針を学びます。

定数とは

定数とは、一度代入したら値を変更しないデータのことです。JavaScript では、定数を宣言するために const キーワードを使います。

const greeting = "こんにちは"; console.log(greeting); // => こんにちは

前のレッスンで学んだ let と同じように、名前をつけてデータを保存できます。ただし、const で宣言したデータは後から上書きできないという違いがあります。

const で定数を宣言する

const の書き方は let とほぼ同じです。let の代わりに const と書くだけです。

const language = "JavaScript"; console.log(language); // => JavaScript

const で宣言するときは、宣言と同時に値を代入する必要があります。 let のように宣言だけして後から代入することはできません。

const message = "Hello"; // OK:宣言と代入を同時に行う
const message; // => SyntaxError: Missing initializer in const declaration

const と let の違い

constlet の最大の違いは、後から値を変更できるかどうかです。

let は値を上書きできる

let で宣言した変数は、後から別の値を代入し直せます。

let color = "赤"; color = "青"; // OK:上書きできる console.log(color); // => 青

const は値を上書きできない

const で宣言した定数には、後から別の値を代入できません。再代入しようとすると、エラーが発生してプログラムが停止します。

const color = "赤"; color = "青"; // => TypeError: Assignment to constant variable.

このエラーは「定数に値を代入しようとした」という意味です。プログラムのミスを早い段階で見つけられるため、安全にコードを書くことができます。

const と let の使い分け

JavaScript では、基本的に const を使い、値を変更する必要があるときだけ let を使うのがよいとされています。

const name = "太郎"; // 名前は変わらないので const let greeting = "おはよう"; // あいさつは後で変わるので let greeting = "こんにちは"; // let なので上書きできる console.log(name); // => 太郎 console.log(greeting); // => こんにちは

迷ったときは、まず const で宣言してみましょう。後から値を変更する必要が出てきたら、そのときに let に変えれば大丈夫です。

まとめ

  • const は値を変更しないデータを宣言するためのキーワード
  • const で宣言した定数に再代入するとエラーになる
  • let は後から値を変更できるが、const はできない
  • 基本は const を使い、再代入が必要なときだけ let を使う