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

MySQL-Abfragemethode mit mehreren Bedingungen

MySQL-Abfrage mit mehreren Bedingungen Umgebung: ...

Einführung in mögliche Probleme nach der Installation von Tomcat

1. Der Tomcat-Dienst ist nicht geöffnet Geben Sie...

Über Generika der C++ TpeScript-Reihe

Inhaltsverzeichnis 1. Vorlage 2. Generika 3. Gene...

Eine kurze Diskussion zum Erstellen eines Clusters in nodejs

Inhaltsverzeichnis Cluster-Cluster Clusterdetails...

Detaillierte Erklärung des HTML-Bereichs-Tags

Der <area>-Tag definiert einen Bereich in e...

Die 9 besten ausländischen Websites mit kostenlosem Bildmaterial

Es ist schwierig, Websites mit gutem Bildmaterial...

Reines CSS, um coole Neonlichteffekte zu erzielen (mit Demo)

Ich habe kürzlich die Tutorial-Reihe zu CSS-Anima...

Vue.js implementiert Kalenderfunktion

In diesem Artikelbeispiel wird der spezifische Co...