In JavaScript sind mehrere Funktionstypen definiert: 1. Verwenden Sie das Funktionsschlüsselwort, um Funktionen durch Deklarationen oder Ausdrücke zu definieren. Die Syntax lautet „Funktionsfunktionsname (Parameter) {ausgeführter Code}“. 2. Verwenden Sie zum Konstruieren den Funktionskonstruktor Function (). die Funktion.
Die Betriebsumgebung dieses Tutorials: Windows 10-System, JavaScript-Version 1.8.5, Dell G3-Computer.
JavaScript verwendet das Schlüsselwort function, um Funktionen zu definieren.
Eine Funktion kann durch eine Deklaration definiert werden oder ein Ausdruck sein.
Funktionsdeklaration
Im vorherigen Tutorial haben Sie bereits die Syntax der Funktionsdeklaration kennengelernt:
function functionName(parameters) { Ausgeführter Code}
Die Funktion wird nicht sofort nach der Deklaration ausgeführt, sondern aufgerufen, wenn wir sie benötigen.
Funktionskonstruktor
Der Funktionskonstruktor wird zum Erstellen eines Funktionsobjekts verwendet. In JavaScript ist eigentlich jede Funktion ein Funktionsobjekt.
Syntax des Funktionskonstruktors:
neue Funktion ([arg1[, arg2[, ...argN]],] functionBody)
arg1, arg2, ... argN werden als normale Parameternamen der Funktion verwendet Ist eine Zeichenfolge, die eine einzelne Variable darstellt, oder eine durch Kommas getrennte Zeichenfolge, die mehrere Variablen darstellt und der JavaScript-Variablenidentifikationsspezifikation entspricht, z. B. „x“, „theValue“ oder „a,b“.
functionBody Eine Zeichenfolge, die die JavaScript-Anweisung enthält, die die Funktion definiert.
Beschreibung
1. Das Funktionsobjekt wird erstellt, wenn der Funktionskonstruktor in eine Funktion analysiert wird. Dies ist jedoch weniger effizient als die Verwendung von Funktionsdeklarationen, Funktionsausdrücken usw., da diese Funktionen direkt über den Code analysiert werden.
2. Die an den Funktionskonstruktor übergebenen Zeichenfolgenparameter werden als variable Parameternamen der vom Funktionskonstruktor generierten Funktion verwendet, und die Reihenfolge, in der sie angezeigt werden, wird als Reihenfolge der Parameter der generierten Funktion verwendet.
3. Der Aufruf des Funktionskonstruktors als Funktion (unabhängig davon, ob er mit dem Schlüsselwort new geändert wurde oder nicht) hat den gleichen Effekt.
Beispiel
// Beispiel kann direkt in Ihrer JavaScript-Konsole ausgeführt werden // Eine Funktion erstellen, die zwei Argumente akzeptiert und die Summe dieser Argumente zurückgibt var adder = new Function('a', 'b', 'return a + b'); // Rufen Sie die Funktion auf Addierer(2, 6); // > 8
Parameter a und b sind normale Parameternamen, die im Funktionskörper verwendet werden können.
Die generierte Funktion ist:
function (a,b){undefiniert gib a+b zurück; }
Über eine Möglichkeit, JSON zu analysieren: var json = (new Function("return " + str))();
Das Prinzip ist das gleiche,
die generierte Funktion ist:
function toJson(str){undefiniert return str; } var str="{'a':1,'b':'abc'}"; toJson(str);
das heißt: function(){return {'a':1,'b':'abc'}}
Der Unterschied zwischen Funktionskonstruktor und Funktionsdeklaration:
Mit dem Funktionskonstruktor erstellte Funktionen werden nicht im Kontext erstellt Abschlüsse werden immer im globalen Bereich erstellt. Bei der Ausführung der erstellten Funktion können sie nur ihre eigenen lokalen Variablen oder globalen Variablen verwenden, was sich von eval unterscheidet.
Verwandte Empfehlungen: JavaScript-Lern-Tutorial.
Das Obige ist der detaillierte Inhalt der verschiedenen Arten von JavaScript-definierten Funktionen. Weitere Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website.