JavaScriptの本質は、次のように要約できます。
bind()
を介した部分適用、配列用の組み込みのmap()
とreduce()
など)とオブジェクト指向プログラミング(可変状態、オブジェクト、継承など)です。JavaScriptエンジンは非常に賢くなり、内部的にはいくつかの癖を修正していることに注意してください。たとえば、
しかし、JavaScriptには多くのエレガントな部分もあります。Brendan Eichのお気に入りは次のとおりです。[3]
最後の2つの項目、オブジェクトリテラルと配列リテラルを使用すると、オブジェクトから開始し、後で抽象化(コンストラクタ、JavaScriptのクラスのアナロジーなど)を導入できます。また、JSON(第22章を参照)を有効にすることもできます。
エレガントな部分は、癖を回避するのに役立つことに注意してください。たとえば、ブロック スコープ、モジュール、継承 API を言語内で実装できます。
JavaScriptは、いくつかのプログラミング言語の影響を受けました(図3-1に示すとおり)。
Date
コンストラクター(java.util.Date
の移植)にもつながりました。function
はAWKに由来します。onclick
などのイベント処理属性を持たせることにつながりました。