質問: JavaScriptのクラス内ではメソッドしか定義できないので、アロー関数を使うにはコンストラクタ内に書くか、もしくはメソッド内で使う必要があることをteratailのこのQ&Aを見て知りました。 しかし、GitHubのこのページでは、アロー関数をクラス内でプロパティ定義に使っているように見えます。(動作確認済) なぜ上記のコードが動くのか、ご教授いただきたいです。 よろしくお願いいたします。
回答: GitHubのページで使われているのはBabelでJavaScriptにトランスパイルされるソースだから動くのだと思います。 これは純粋なJavaScriptとしては(2018年10月現在は)エラーになる構文です。 しかしBabelはこの構文に対応しているので、トランスパイルされることで吐き出されたJavaScriptは実際に動作するわけです。 アロー関数をクラス内でプロパティ定義に使う構文は、純粋なJavaScriptの仕様候補として提案中のものでBabelではそれを先取りして対応しているようです。