1. Verwendung von Pfeilfunktionen ES6 fügt eine neue Methode zum Definieren von Funktionsausdrücken mithilfe von Pfeilen Der zweite Teil dieses Artikels stellt die funktionalen Unterschiede zwischen Pfeilfunktionen und normalen Funktionen vor. 1. Von der Normalfunktion zur Pfeilfunktion Wie unten gezeigt, können Sie zum Definieren einer Funktion Funktion getSum(a, b) { gib a + b zurück; } Wenn Sie zum Definieren dieser Funktion eine Pfeilfunktion verwenden, können Sie sie wie folgt schreiben, wobei Sie das const getSum = (a, b) => { gib a + b zurück; }; 2. Geschweifte Klammern weglassen und zurückgeben Wenn Sie eine Pfeilfunktion definieren und der Funktionskörper nur eine Unten sehen Sie die vollständige Definition der Pfeilfunktion. const getSum = (a, b) => { gib a + b zurück; }; Diese Pfeilfunktion hat nur eine Konstanten getSumme = (a, b) => a + b; 3. Klammern weglassenWenn die definierte Pfeilfunktion nur einen Parameter hat, können die Klammern weggelassen werden. Wie unten gezeigt, hat die definierte Pfeilfunktion nur einen Parameter und wird vollständig geschrieben. const-Funktion = (a) => { gib a + 2 zurück; }; Die Klammern um die Parameter werden weggelassen und der folgende Code entspricht dem obigen Code. Konstante Funktion = a => a + 2; Hinweis : Wenn die Funktion keine Parameter hat oder mehrere Parameter hat, müssen Klammern verwendet werden. 2. Der Unterschied zwischen Pfeilfunktionen und normalen FunktionenIn den meisten Fällen können Pfeilfunktionen überall dort verwendet werden, wo normale Funktionen verwendet werden können, da Pfeilfunktionen prägnanter sind. In manchen Fällen unterscheiden sich Pfeilfunktionen jedoch stark von normalen Funktionen. 1. Das this der Pfeilfunktion ist das this des übergeordneten Bereichs Der folgende Code definiert ein Objekt const obj = { Name: 'Jack', getThis() { konsole.log(dies); }, }; obj.getThis(); // {name: 'Jack', getThis: ƒ} Ähnlich wird ein Objekt const obj = { Name: 'Jack', getThis: () => { konsole.log(dies); }, }; obj.getThis(); // Fenster 2. call, apply und bind können das this von Pfeilfunktionen nicht ändern Im folgenden Code druckt die normale Funktion const obj = { Name: 'Jack', }; Funktion getName() { konsole.log(dieser.name); } getName.call(obj); // Buchse Wenn die Funktion in eine Pfeilfunktion geändert wird, funktioniert const obj = { Name: 'Jack', }; const getName = () => { konsole.log(dieser.name); }; getName.call(obj); // undefiniert 3. Kann nicht als Konstruktor verwendet werdenPfeilfunktionen können nicht als Konstruktoren verwendet werden. Wenn Sie eine Pfeilfunktion als Konstruktor verwenden, wird ein Fehler gemeldet, wie im folgenden Code gezeigt. const Person = () => { dieser.name = "Jack"; }; const usr = new Person(); // Person ist kein Konstruktor 4. Keine Argumente Innerhalb einer normalen Funktion können Sie Funktion func() { konsole.log(Argumente); } func(1, 2, 3); // [Argumente] { '0': 1, '1': 2, '2': 3 } Pfeilfunktionen können das Wenn Sie im Browser const func = () => { // Browserumgebung console.log(Argumente); // Argumente sind nicht definiert }; Funktion(1, 2, 3); Die Pfeilfunktion kann die Eingabeparameter jedoch in der Form von const func = (...args) => { konsole.log(args); // [ 1, 2, 3 ] }; Funktion(1, 2, 3); 5. Pfeilfunktionen unterstützen new.target nicht Innerhalb des Konstruktors einer normalen Funktionsdefinition wird Funktion Person() { dieser.name = "Jack"; konsole.log(neues.ziel); } // Zeigt auf den Konstruktor new Person(); // [Funktion: Person] In Pfeilfunktionen wird const Person = () => { dieser.name = "Jack"; konsole.log(neues.ziel); } // Browserumgebung new Person(); // new.target-Ausdruck ist hier nicht zulässig
Damit ist dieser Artikel über die Eigenschaften von JavaScript-Pfeilfunktionen und die Unterschiede zu normalen Funktionen abgeschlossen. Weitere Informationen zu JS-Pfeilfunktionen und normalen Funktionen finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Tipps zur Verwendung kleiner HTML-Tags
>>: So teilen Sie Daten in MySQL-Tabellen und -Datenbanken auf
Ich möchte eine Situation erreichen, in der die B...
Das Herunterladen dieser Datenbank nimmt viel Zei...
<tr> <th width="12%">AAAAA&l...
Ziehen Sie das Bild Docker-Pull MySQL Sehen Sie s...
Inhaltsverzeichnis 1. Verwenden Sie das „A“-Tag, ...
Als Neuling, der gerade mit dem Linux-System in K...
In diesem Artikel wird der spezifische Code von j...
Wie unten dargestellt: SELECT Anzahl(DISTINCT(a.r...
1. PRIMARY KEY hinzufügen (Primärschlüsselindex) ...
Die MySQL-Fremdschlüsseleinschränkung (FOREIGN KE...
1. 1 Spalte ändern Update Student S, Stadt C setz...
Der Grund für das Schreiben dieses Artikels ist, ...
Inhaltsverzeichnis Berechnete Daten initialisiere...
1. Die Beziehung zwischen Schriftarten und Zeiche...
In diesem Artikel werden zwei Methoden zur Implem...