new付け忘れ防止クラス
あー、たまに見るなーと思ったコード。
function Aaa() { if (!(this instanceof Aaa)) { return new Aaa(arguments); } }
この関数を呼ぶとき、newを付けていようが付けていまいが同じ動作になる。
でもJavaScript Ninjaの極意にもあったけどそれってうれしいのかなーと思った。
function Aaa() { if (!(this instanceof Aaa)) { throw new Error('forgot new?'); } }
とかの方がいいのかなーと。new付け忘れてますよーって言われた方がうれしいんじゃないかなーと思った。まる。