Heim >Web-Frontend >js-Tutorial >Können Pfeilfunktionen in ES2015 ohne „var' oder „const' benannt werden?

Können Pfeilfunktionen in ES2015 ohne „var' oder „const' benannt werden?

Susan Sarandon
Susan SarandonOriginal
2024-11-06 22:46:03771Durchsuche

Can Arrow Functions in ES2015 Be Named Without `var` or `const`?

Wie benenne ich Pfeilfunktionen in ES2015?

In ES2015 sind Pfeilfunktionen eine elegante Möglichkeit, prägnante Funktionen zu schreiben, aber Sie können es auch tun Ich frage mich, ob es möglich ist, ihnen einen Namen ohne die traditionelle var- oder const-Syntax zuzuweisen.

Betrachten Sie die folgende benannte Funktion:

function sayHello(name) {
    console.log(name + ' says hello');
}

Um dies in eine Pfeilfunktion umzuwandeln, könnte man zunächst annehmen dass eine benannte Pfeilfunktion etwa so aussehen würde:

var sayHello = (name) => {
    console.log(name + ' says hello');
}

Dieser Ansatz erfordert jedoch die Verwendung einer var-Anweisung, was möglicherweise nicht wünschenswert ist.

Die Lösung liegt in der Zuweisung der Pfeilfunktion zu einer Variablen oder einem Eigenschaftsinitialisierer. Auf diese Weise kann der Variablen- oder Eigenschaftsname als Name für die Pfeilfunktion dienen. Beispielsweise ist der folgende Code vollkommen gültig:

sayHello = (name) => {
    console.log(name + ' says hello');
}

Wie herkömmliche anonyme Funktionsausdrücke erben auf diese Weise zugewiesene Pfeilfunktionen den Namen der Variablen oder Eigenschaft, der sie zugewiesen sind. Um dies zu demonstrieren, betrachten Sie den folgenden Code:

const sayHello = (name) => {
    console.log(name + ' says hello');
};
console.log(sayHello.name); // "sayHello"

In diesem Beispiel hat die Pfeilfunktion einen echten Namen, sayHello, der mit der Eigenschaft .name abgerufen werden kann.

Das obige ist der detaillierte Inhalt vonKönnen Pfeilfunktionen in ES2015 ohne „var' oder „const' benannt werden?. 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