Heim >Web-Frontend >js-Tutorial >Wann erfordern ES6-Pfeilfunktionen eine explizite „return'-Anweisung?

Wann erfordern ES6-Pfeilfunktionen eine explizite „return'-Anweisung?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-24 08:51:10524Durchsuche

When Do ES6 Arrow Functions Require an Explicit `return` Statement?

Wann ist in ES6-Pfeilfunktionen eine explizite Rückgabe erforderlich?

In ES6 geben Pfeilfunktionen implizit den Ausdruck innerhalb ihres prägnanten Körpers zurück, wodurch eliminiert wird die Notwendigkeit des Schlüsselworts „return“ in Szenarios mit einem einzelnen Ausdruck. Es gibt jedoch bestimmte Fälle, in denen immer noch eine explizite Return-Anweisung erforderlich ist.

Wann Return mit Pfeilfunktionen verwendet werden sollte

  • Wann ein Block ist Gegenwart: Eine Pfeilfunktion mit geschweiften Klammern (ein Block) verliert ihr implizites Rückgabeverhalten. Zur Angabe des Rückgabewerts der Funktion muss eine explizite Return-Anweisung verwendet werden. Beispiel:
() => { console.log('Hello'); } // Implicit return, logs 'Hello'
() => { return 'Hello'; } // Explicit return, returns 'Hello'
  • Mehrdeutige Syntax: Die Verwendung von geschweiften Klammern ohne explizite Rückgabe kann zu syntaktischen Mehrdeutigkeiten führen. Zum Beispiel die folgende Pfeilfunktion:
(name) => {id: name}

Gibt undefiniert zurück, da die geschweiften Klammern auf einen Block hinweisen und die ID als Bezeichnung und nicht als Eigenschaftsnamen interpretieren.

  • Mehrzeilige Ausdrücke: Wenn sich der Ausdruck einer Pfeilfunktion über mehrere Zeilen erstreckt, kann es verwirrend sein, sich daran zu erinnern, ob return enthalten war. Um Fehler zu vermeiden, verwenden Sie explizit return, um den korrekten Rückgabewert sicherzustellen.

Beispiele

Implizite Rückgabe:

(name) => name + '!'; // Implicit return, returns 'Jess!'

Explizite Rückgabe:

(name) => { return name + '!'; } // Explicit return, returns 'Jess!'

In Zusammenfassung: Wenn eine Pfeilfunktion einen Block enthält, eine mehrdeutige Syntax hat oder sich über mehrere Zeilen erstreckt, ist eine explizite Return-Anweisung erforderlich, um den Rückgabewert der Funktion anzugeben. Andernfalls wird implizit der Ausdruck im Körper der Pfeilfunktion zurückgegeben.

Das obige ist der detaillierte Inhalt vonWann erfordern ES6-Pfeilfunktionen eine explizite „return'-Anweisung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn