質問: javascriptでブロックスコープの変数宣言に「let」という名前が選ばれたのはなぜですか? 私はなぜvarがその名前をとるのか理解します - それは可変であり、const - それは定数ですが、letの名前の後ろにある意味は何ですか、現在のブロックに適用範囲は?なるがままに?
回答: 最も可能性が高いのは、それが最も慣用的な選択だったということです。話すのが簡単なだけでなく、理解するのも直感的です。 var以外にも、議論できる人もいます。しかし、もう少し歴史があると思います。から ウィキペディア : dana scottのlcf言語は、ラムダ計算が現代の関数型言語に進化した段階です。この言語はlet式を導入しました。それはそれ以来、ほとんどの関数型言語で登場しています。 algolやpascalなどのステートフル命令型言語では、基本的にlet式を実装して、制限された範囲の関数をブロック構造で実装します。 私はこれがjavascriptのletにとってもインスピレーションであると信じたいと思います。