Heim > Web-Frontend > js-Tutorial > Warum geben einige Pfeilfunktionen in JavaScript „undefiniert' zurück?

Warum geben einige Pfeilfunktionen in JavaScript „undefiniert' zurück?

Patricia Arquette
Freigeben: 2024-12-18 05:25:09
Original
312 Leute haben es durchsucht

Why Do Some Arrow Functions Return `undefined` in JavaScript?

Warum Pfeilfunktionen undefiniert zurückgeben können: Das Rätsel um explizite Rückgabe vs. implizite Rückgabe

Pfeilfunktionen bieten eine prägnante Syntax zum Definieren von Funktionen in JavaScript . Beim Umgang mit in Klammern ({}) eingeschlossenen Funktionskörpern stoßen Anfänger jedoch häufig auf ein eigenartiges Problem: Warum geben diese Pfeilfunktionen undefiniert zurück?

Betrachten Sie das folgende vereinfachte Beispiel:

const f = arg => { arg.toUpperCase(); };
console.log(f("testing")); // undefined
Nach dem Login kopieren

Diese Pfeilfunktion soll das Argument in Großbuchstaben umwandeln, gibt aber undefiniert zurück. Der Grund liegt in den optionalen geschweiften Klammern um den Körper der Pfeilfunktion.

Im Gegensatz zu Pfeilfunktionen mit prägnanten Körpern (ohne geschweifte Klammern), bei denen der Körperausdruck implizit zurückgegeben wird, erfordern Pfeilfunktionen mit Funktionskörpersyntax eine explizite Return-Anweisung. Im ursprünglichen Beispiel führt das Fehlen einer expliziten Rückgabe dazu, dass undefiniert anstelle des Großbuchstabenarguments zurückgegeben wird.

Um dies zu beheben, können Sie entweder eine explizite Rückgabe verwenden:

const f = arg => { return arg.toUpperCase(); };
// Explicit return ^^^^^^
Nach dem Login kopieren

Oder Verwenden Sie einen prägnanten Text:

const f = arg => arg.toUpperCase();
Nach dem Login kopieren

Beispiele mit expliziter Rückgabe und prägnantem Text:

const f1 = arg => { return arg.toUpperCase(); };
console.log(f1("testing"));

const f2 = arg => arg.toUpperCase();
console.log(f2("testing"));
Nach dem Login kopieren

Von Durch die Einhaltung dieser Regeln können Sie sicherstellen, dass Ihre Pfeilfunktionen immer den beabsichtigten Wert zurückgeben, sei es durch explizite oder implizite Rückgaben.

Das obige ist der detaillierte Inhalt vonWarum geben einige Pfeilfunktionen in JavaScript „undefiniert' zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage