現象
- これは、問題なくインスタンスすることができる。
const TestClass = function (className) {
this.className = className;
};
new TestClass('hogehoge');
- コンストラクタをアロー関数に変更するとエラーとなる。
const TestClass = className => {
this.className = className;
};
new TestClass('hogehoge'); // TypeError: TestClass is not a constructor
理由
- コンストラクタは、アロー関数で書くことができない。
- そもそも、アロー関数の
this
は宣言された時点でのthis
になる。
- そもそも、アロー関数の