Der Inhalt dieses Artikels befasst sich mit dem Format und den Unterschieden zu normalen Funktionen. Ich hoffe, dass er für Sie hilfreich ist.
// ES5 var selected = allJobs.filter(function (job) { return job.isSelected(); }); // ES6 箭头函数 var selected = allJobs.filter(job => job.isSelected()); // ES6 $("#confetti-btn").click(event => { playTrumpet(); fireConfettiCannon(); });
1. Um eine Funktion mit mehreren Parametern (oder ohne Parameter oder Standardwerte oder destrukturierte Parameter) zu schreiben, fügen Sie Klammern um die Parameterliste hinzu.
2. Pfeilfunktionen mit Blöcken geben nicht automatisch Werte zurück. Bitte verwenden Sie die Return-Anweisung.
3. Bei der Verwendung von Pfeilfunktionen zum Erstellen gewöhnlicher Objekte ist eines zu beachten. Schließen Sie Objekte immer in Klammern ein:
Pfeilfunktionen haben keinen eigenen this-Wert. Werte innerhalb dieser Pfeilfunktionen werden immer vom umschließenden Bereich geerbt.
Für Methoden, die mit der object.method()-Syntax aufgerufen werden, verwenden Sie Nicht-Pfeilfunktionen. Diese Funktionen erhalten vom Aufrufer einen aussagekräftigen Wert. Alles andere verwendet Pfeilfunktionen.
{ ... addAll: function addAll(pieces) { var self = this; _.each(pieces, function (piece) { self.add(piece); }); }, ... } // ES6 { ... addAll: function addAll(pieces) { _.each(pieces, piece => this.add(piece)); }, ... }
Es gibt einen weiteren kleinen Unterschied zwischen Pfeil- und Nicht-Pfeilfunktionen: Pfeilfunktionen haben kein eigenes Argumentobjekt.
Gewöhnliche Funktionen:
1. Wenn eine Funktion als globale Funktion aufgerufen wird, zeigt dies auf das globale Objekt
2. Wenn eine Funktion als Methode in einem Objekt aufgerufen wird, zeigt dies auf das Objekt
3. Wenn eine Funktion als Konstruktor verwendet wird, zeigt dies auf das neue Objekt, das aus dem Konstruktor new kommt
4 Sie können den Punkt davon auch durch Aufruf, Anwenden und Binden ändern 🎜>
2. Die Pfeilfunktion hat keine Super-
3. Die Pfeilfunktion hat keine Argumente.
Die Pfeilfunktion hat keine new.target-Bindung.
5. Neu kann nicht verwendet werden
Es gibt keinen Prototyp
7. Doppelte benannte Parameter werden nicht unterstützt.
Beantworten Sie diese Frage in der ES6-Pfeilfunktion
Detaillierte Erklärung der JavaScript-Pfeilfunktion
Das obige ist der detaillierte Inhalt vonEine Erklärung des Formats und der Pfeilfunktionen in js und des Unterschieds zu gewöhnlichen Funktionen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!