2015-08-20 13 views

Odpowiedz

22

Jeśli nie używać blokady ({}) w ciele arrow function, korpus musi być expression:

ArrowFunction: 
    ArrowParameters[no LineTerminator here] => ConciseBody 

ConciseBody: 
    [lookahead ≠ { ] AssignmentExpression 
    { FunctionBody } 

Ale throw to statement, a nie wyrażenie.


Teoretycznie

() => throw x; 

odpowiada

() => { return throw x; } 

który nie byłby ważne albo.

2

Nie można return throw to skutecznie, co próbujesz zrobić:

function(){ 
    return throw 42; 
} 
Powiązane problemy