1. ホーム
  2. ジャバスクリプト

[解決済み】JavaScriptのConst:いつ使うのか、必要なのか?

2022-03-25 14:18:04

質問

最近 const というJavaScriptのキーワードがあります。私の知る限りでは、このキーワードは 不変の変数 そして、(Node.jsで)再定義できないことを確認するためにテストしています。

const x = 'const';
const x = 'not-const';

// Will give an error: 'constant 'x' has already been defined'

まだすべてのブラウザで標準化されているわけではないことは承知していますが、私が関心を持つのは Node.js V8 そして、ある特定の 開発者/プロジェクト を使用する場合、それを強く支持するようです。 var キーワードを使っても同じ効果が得られるかもしれません。

  • を使用することが適切なのはどのような場合ですか? const の代わりに var ?
  • を使用する必要があります。 再割り当てが宣言されているか?
  • というのは、実際に何か違いがあるのでしょうか? var の代わりに const またはその逆は?

解決方法は?

ご質問には2つの側面があります。 const の代わりに var とか、そうすることで人間的にどうなるのかとか。

技術的な違いは大きいです。コンパイルされた言語では、定数はコンパイル時に置き換えられ、その使用によってデッドコードの除去など他の最適化が行われ、コードの実行時効率をさらに高めることができるようになるのです。最近の(大雑把な言い方ですが)JavaScriptエンジンは、実際にJSコードをコンパイルして性能を高めているので、constキーワードを使うと、上記の最適化が可能であり、それを行うべきであると通知することになります。その結果、パフォーマンスが向上するのです。

人間に関係する面では、キーワードのセマンティクスについてです。変数とは、変化することが予想される情報を含むデータ構造である。定数は、決して変化しない情報を含むデータ構造である。エラーの余地がある場合 var を常に使用する必要があります。しかし、プログラムの寿命が尽きるまで決して変化しない情報のすべてを const . 異なる状況下で情報を変更する必要がある場合は var を使えば、たとえその変更がコードに現れなかったとしても、そのことを示すことができます。