Einführung in die neuen Funktionen von ECMAscript

Einführung in die neuen Funktionen von ECMAscript

1. Standardwerte für Funktionsparameter

1.1 Festlegen von Standardwerten für Funktionsparameter

In ECMAScript 2015 ist es erlaubt, Standardwerte für Funktionsparameter hinzuzufügen, indem die Standardwerte direkt nach den Parametern geschrieben werden.

Der Beispielcode lautet wie folgt:

//Funktionsparameter geben Standardwerte an function fun(a = 1, b = 2) {
  konsole.log(a + b);
}
spaß() // 3


Es ist zu beachten, dass Parametervariablen standardmäßig deklariert werden und daher nicht erneut mit let oder const deklariert werden können, da sonst eine Ausnahme ausgelöst wird.

Außerdem stehen die Standardparameter am Ende der Parameterliste, da dies sonst zu Mehrdeutigkeiten führt und die ausgelassenen Parameter nicht weggelassen werden können.

Das folgende Codebeispiel:

// Die Standardparameterposition sollte am Ende sein function fun(a = 1, b) {
  konsole.log(a, b);
}
// Rufe die Funktion auf und übergebe einen Parameter fun(20); // 20 undefiniert


1.2 Verwendung mit entkoppelter Zuordnung

Standardparameterwerte können in Verbindung mit Standardwerten für Destrukturierungszuweisungen verwendet werden. Es gibt zwei Möglichkeiten, einen Standardwert dafür festzulegen. Der Beispielcode lautet wie folgt:

Funktion Spaß([a, b = 5] = [3]) {
  konsole.log(a, b);
}
spaß() // 3 5


1.3 Umfang der Funktionsparameter

Sobald die Standardwerte der Parameter festgelegt sind, bilden die Parameter einen separaten Bereich, wenn die Funktion deklariert und initialisiert wird. Wenn die Initialisierung abgeschlossen ist, verschwindet der Bereich. Dieses Syntaxverhalten tritt nicht auf, wenn der Standardwert des Parameters nicht festgelegt ist.

Der Beispielcode lautet wie folgt:

sei x = 5

Funktion Spaß(y = x) {
  x = 10
  konsole.log(y);
}
spaß() // 5


2.Rest-Parameter

ECMAScript 2015 führte rest (in der Form … Variablenname) ein, um redundante Parameter einer Funktion zu erhalten, sodass das Argumentobjekt nicht mehr verwendet werden muss. Die mit dem Restparameter verwendete Variable ist ein Array, das die zusätzlichen Parameter enthält.

Der Beispielcode lautet wie folgt:

// Verwende das Argumentobjekt, um den Maximalwert der übergebenen Parameter zu finden Funktion max1() {
  gibt Math.max.apply(null, Argumente) zurück
}

console.log(max1(1, 5, 6, 33, 65, 35, 15)); // 65

// Restparameter verwenden Funktion max2(...arg) {
  gibt Math.max(...arg) zurück
}
console.log(max2(1, 5, 6, 33, 65, 35, 15)); // 65

3. Pfeilfunktion

3.1 Was ist eine Pfeilfunktion

ECMAScript 2015 hat Pfeilfunktionen (auch als Fat Arrow-Funktionen bekannt) hinzugefügt, die eine kürzere Syntax als Funktionsausdrücke haben und diese lexikalisch binden. Pfeilfunktionen sind in den meisten Fällen anonym.

Die grammatische Struktur einer Pfeilfunktion ist wie folgt:

// Grundlegende Syntaxstruktur (Parameter 1, Parameter 2, ..., Parameter N) => {Funktionsdeklaration}
(param1, parameter2, ..., parameterN) => Ausdruck (einzeln)
// Äquivalent zu: (Parameter 1, Parameter 2, ..., Parameter N) => {Return-Ausdruck}

// Wenn nur ein Parameter vorhanden ist, ist der Index optional (Parameter) => {Funktionsdeklaration}
// oder Parameter => {Funktionsdeklaration}

// Wenn kein Parameter vorhanden ist, sollten Sie ein Klammernpaar schreiben () => {Funktionsdeklaration}

// Kann mit Restparametern und Standardparametern verwendet werden (Parameter 1, Parameter 2, ...rest) => {Funktionsdeklaration}
(Param1, Parameter2, ..., ParameterN = StandardwertN) => {Funktionsdeklaration}

Für Pfeilfunktionen können auch Funktionsnamen definiert werden. Der Syntaxaufbau ist wie folgt:

let funName = (Parameter 1, Parameter 2, ..., Parameter N) => {Funktionsdeklaration}


Der Beispielcode lautet wie folgt:

sei Summe = (a, b) => {
  gib a + b zurück
}
console.log(Summe(10, 20)); //30


3.2 Hinweise zu den Pfeilfunktionen

Bei der Verwendung von Pfeilfunktionen sind einige Punkte zu beachten:

  • this Objekt im Funktionskörper ist das Objekt, in dem es definiert ist, nicht das Objekt, in dem es verwendet wird.

Der Beispielcode lautet wie folgt:

// ES5-Notation let fun1 = function () {
  Konsole.log(diese.id);
}
// ES6 Pfeilfunktion schreibt let fun2 = () => {
  Konsole.log(diese.id);
}

lass obj1 = {
  ID: 666,
  Spaß: Spaß1
}
let obj2 = {
  ID: 666,
  Spaß: Spaß2
}
obj1.fun() // 666
obj2.fun() // undefiniert

Aus dem Code können wir erkennen, dass this einer normalen Funktion beim Aufruf festgelegt wird, während this unserer Pfeilfunktion bei der Definition festgelegt wird.

  • Es kann nicht als Konstruktor verwendet werden, d. h. der new Befehl kann nicht verwendet werden, da sonst ein Fehler auftritt.
  • Das arguments kann nicht verwendet werden, da es im Funktionskörper nicht vorhanden ist. Wenn Sie es verwenden möchten, können Sie stattdessen den Restparameter verwenden.

4. Funktions-Tail-Aufruf

Tail Call ist ein wichtiges Konzept in der funktionalen Programmierung. Es ist sehr einfach und kann in einem Satz erklärt werden. Es bedeutet, dass der letzte Schritt einer Funktion darin besteht, eine andere Funktion aufzurufen.

Der Beispielcode lautet wie folgt:

sei x = (x) => {
  returniere 2 * x
}

sei y = Funktion (y) {
  Rückgabewert x(y)
}

console.log(y(20)); // 40

Dies ist das Ende dieses Artikels über die neuen Funktionen von ECMAscript: Funktionserweiterung. Weitere Informationen zur Erweiterung der ECMAscript-Funktionen finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • ECMAScript6 fügt neue Wertevergleichsfunktion Object.is hinzu
  • Restparameter der ECMAScript6-Funktion (Restparameter)
  • Standardparameter der ECMAScript6-Funktion
  • Funktionstyp in ECMAScript
  • Eine detaillierte Einführung in die neue Funktion von ECMAScript6, Arrow Function

<<:  Das obere feste Div kann auf einen halbtransparenten Effekt eingestellt werden

>>:  Schritte für IDEA zur Integration von Docker zur Realisierung einer Remote-Bereitstellung

Artikel empfehlen

Detaillierte Erklärung zur Verwendung der vue3 Teleport-Sofortbewegungsfunktion

Die Verwendung der vue3 Teleport-Sofortbewegungsf...

So installieren Sie vncserver in Ubuntu 20.04

Ubuntu 20.04 wurde im April 2020 offiziell veröff...

Detaillierte Erklärung, wie MySQL (InnoDB) mit Deadlocks umgeht

1. Was ist ein Deadlock? Die offizielle Definitio...

7 Interviewfragen zu JS, wie viele können Sie richtig beantworten

Vorwort In JavaScript ist dies der Kontext zum Au...

Details zur Reihenfolge, in der MySQL my.cnf liest

Inhaltsverzeichnis Die Reihenfolge, in der MySQL ...

Erstellen Sie eine Bildschirmaufzeichnungsfunktion mit JS

OBS studio ist cool, aber JavaScript ist cooler. ...

HTML (CSS-Stilspezifikation) muss lauten

CSS-Stilspezifikationen 1. Klassenauswahl 2. Tag-...

So verwenden Sie Web-Frontend-Vektorsymbole

Vorwort Beim Schreiben von Frontend-Seiten verwen...

Zusammenfassung der Wissenspunkte zum B-Tree-Index bei der MySQL-Optimierung

Warum müssen wir SQL optimieren? Wenn wir SQL-Anw...

So legen Sie die Breite und Höhe von HTML-Tabellenzellen fest

Beim Erstellen von Webseiten tritt häufig das Pro...

mysql teilt eine Datenzeile basierend auf Kommas in mehrere Zeilen auf

Inhaltsverzeichnis Trennwirkung Erläuterung der B...

Der Unterschied zwischen Docker Run und Start

Der Unterschied zwischen Ausführen und Starten in...