Warum gibt meine Pfeilfunktion keinen Wert zurück?

8

Ich habe eine Pfeilfunktion, die so aussieht (vereinfacht):

%Vor%

Aber wenn ich es anrufe, bekomme ich undefined :

%Vor%

Warum?

Beispiel:

%Vor%

( Hinweis: Dies ist ein sauberes, kanonisches Dupetarget für das spezifische Problem mit den obigen Pfeilfunktionen.)

    
T.J. Crowder 18.08.2017, 10:54
quelle

1 Antwort

12

Wenn Sie die Funktion body-Version einer Pfeilfunktion verwenden (mit {} ), gibt es keine implizite return . Sie müssen es angeben. Wenn Sie den kurzen -Körper verwenden (no {} ), wird das Ergebnis des body-Ausdrucks implizit von der Funktion zurückgegeben.

Sie schreiben das also entweder mit einem expliziten return :

%Vor%

oder mit einem prägnanten Körper:

%Vor%

Beispiele:

%Vor%

Slight Tangential, aber von {} sprechen: Wenn der Körperausdruck des präzisen Pfeils ein Objektinitialisierer sein soll, geben Sie ihn in () :

ein %Vor%     
T.J. Crowder 18.08.2017, 11:55
quelle