なぜこれは無効であるという理由を探しています:
() => throw 42;
私はそれを回避できることを知っています:
() => {throw 42};
できませんreturn throw
これは事実上あなたがやろうとしていることです:
function(){
return throw 42;
}
矢印関数で中括弧を省略すると、 暗黙の戻り値 が作成されます。これは、次のように、中括弧を使用して明示的な戻り値を作成するのと同じです。() => { return throw 42 };
ただし、返すことができるのは expressions のみであり、 statements は返すことができません。そして、throw
はステートメントです。