const
const
はES6/TypeScriptで提供された非常に素晴らしい機能です。変数をイミュータブル(immutable)、つまり不変にすることができます。これは、可読性の面だけでなく実行時の面でも優れています。 constを使うには、単にvar
の代わりにconst
を使うだけです:
この構文は、
let constant foo
すなわち変数+動作指定子のようなものを入力させる他の言語よりも、ずっと優れています(個人的な意見です)。
const
を使うことは、可読性とメンテナンス性のどちらの面でも良いことです。そして、マジックリテラル(謎の定数、マジックナンバーとも呼びます)を使うことを避けることができます。
const宣言は初期化する必要があります
以下はコンパイルエラーになります:
代入の左辺に定数は置けない
作成された定数はイミュータブル(不変)です。したがって、新しい値を代入しようとするとコンパイルエラーになります:
ブロックスコープ
const
はlet
と同様にブロックスコープです:
深い不変性 (deep immutability)
const
は、変数の参照(reference)を保護する限りにおいて、オブジェクトリテラルでも機能します:
ただし、以下に示すように、オブジェクト内部のプロパティを変更することは可能です。
できるだけ const にしよう
後で変数の初期化を行ったり、再代入する予定が無いのであれば const
を使いましょう(再代入する場合は let
を使います)。
最終更新