JavaScriptにおける定数を用いたプログラミングアプローチ
最近、JavaScriptでは変数宣言に対する新しい
アプローチが生まれています。このアプローチの
本質は、値が確実に変動することが分かっている場合を除き、
letの代わりにどこでもconstを
使用するというものです。
例を見てみましょう:
const a = 1;
const b = 2;
const c = a + b;
console.log(c);
このアプローチは非常に人気があり、様々な 外部の情報源で目にすることがあるでしょう。
しかし、私はこの流行りのアプローチには反対です。 なぜなら、定数は円周率のような値、つまり プログラム内であらかじめ定義されている値を 保存するために考案されたものだからです。 すべての変数を定数として宣言することは、 この考え方に反しています。
さらに、配列やオブジェクトの挙動はあまり 論理的ではありません - これらを定数として宣言しながら、 そのプロパティを自由に変更することができます。 変更可能な定数とはいったい何なのでしょうか?
オブジェクトを定数として宣言することは、 データ型を変更できないようにするため(オブジェクトの代わりに プリミティブを代入するなど)によく使用されます。 しかし、JavaScriptではデフォルトで存在しない 型の制御が必要な場合は、その方言である TypeScriptを 使用する方が良いでしょう。
要するに、もしこれが流行っているなら、
あなたはこのアプローチを使うことができますが、
私は反対であり、この教科書では今後も
変数は言語の作者によって意図された通り、
letを使用して宣言され続けます。
以下のコードを、説明されたアプローチを使用して書き直してください:
const arr = [1, 2, 3, 4, 5];
const res = arr[1] + arr[2];
console.log(res);