ヌルポインター親衛隊

社内でひとりエンジニアやってます。

JavaScript - 変数について

f:id:ell_sub2:20210519233257p:plain

JavaScriptの変数にはconst、let、varの3つがある。
もともとvarのみが使用できたが、途中からconstとletが追加された。
歴史的な背景により今も残されているが、varは使用しなほうが良い。
JSについて書かれた諸所のサイトが詳しいが、varでは変数の再定義が可能である問題がある。
しかしながら、変数の再定義を"するような"コードで実装され、動作しているWebサイトの互換性を保つため、現在もvarは残されている。

よって、新しくJSを書くならばletとconstを使用するべきだ。

There should be one – and preferably only one – obvious way to do it.
(一つの、そしてできれば一つだけの明白な方法があるはずだ。)
- PEP 20 -- The Zen of Python | Python.org

ECMAScript、つまりJSではこうした互換性の問題を回避するために、一つのやりたいことに対して複数の機能が提供されている。
こうしたところがThe Zen of Pythonに表されるような、他言語の思想と相反する性質があり混乱するところである。
広く使われ、そして全Webサイトに必ずしも優秀なエンジニアが居ないような仕組みでは、仕方のないことかもしれない。