JavaScriptに関するメモ
高速化について
即時関数で変数名の衝突を避ける
(function(){ ほげほげ }).call(this);
みたいな記述。単に ほげほげ と書けばいいだけのように見えるが、こうすることで「ほげほげ」内で定義される変数はローカル変数となり、グローバル変数の名前の衝突を避けることができる。
関数型言語っぽい性格
クラスが無い(無かった?)
- JavaScriptはオブジェクト指向言語ではあるがクラスの概念がない。
- でもクラスベースのオブジェクト指向が世の中の多数派なので、ES6(ECMAScript 2015) でclassが導入された。
- ES6のclassの実態はJavaScriptに従来からあったクラスっぽい記述の糖衣構文。