Heim > Web-Frontend > js-Tutorial > Hauptteil

So schreiben Sie eine benutzerdefinierte JavaScript-Funktion

青灯夜游
Freigeben: 2023-01-07 11:42:02
Original
4890 Leute haben es durchsucht

So schreiben Sie benutzerdefinierte js-Funktionen: 1. „function function name ([args]) {code}“ 2. „var function name = new Function (p1, p2, ..., pn, body);“; 3. „Funktion ([args]){code}“.

So schreiben Sie eine benutzerdefinierte JavaScript-Funktion

Die Betriebsumgebung dieses Tutorials: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer.

Es gibt drei Möglichkeiten, Funktionen in JavaScript anzupassen, nämlich die Verwendung der Funktionsanweisung, die Verwendung des Function()-Konstruktors und die Definition von Funktionsliteralen.

Funktionen deklarieren

In JavaScript können Sie die Funktionsanweisung zum Deklarieren von Funktionen verwenden. Die spezifische Verwendung ist wie folgt:

function funName([args]) {
    statements
}
Nach dem Login kopieren

funName ist der Funktionsname, der wie der Variablenname ein zulässiger JavaScript-Bezeichner sein muss. Nach dem Funktionsnamen folgt eine Liste von Parametern, die in Klammern eingeschlossen und durch Kommas getrennt sind. Parameter sind optional und die Anzahl ist unbegrenzt.

Als Bezeichner wird auf Parameter nur innerhalb des Funktionskörpers zugegriffen, und Parameter sind private Mitglieder des Funktionsbereichs. Übergeben Sie beim Aufrufen einer Funktion einen Wert an die Funktion, verwenden Sie dann Parameter, um den extern übergebenen Wert zu erhalten, und greifen Sie in die Ausführung der Funktion innerhalb des Funktionskörpers ein.

Nach den Klammern steht eine geschweifte Klammer. Die in der geschweiften Klammer enthaltene Aussage ist der Hauptinhalt der Funktionskörperstruktur. Im Funktionskörper sind geschweifte Klammern unerlässlich. Ohne geschweifte Klammern löst JavaScript einen Syntaxfehler aus.

Beispiel

Die Funktionsanweisung muss den Funktionsnamen sowie Klammern und Klammern enthalten. Andere Codes können weggelassen werden, sodass der einfachste Funktionskörper eine leere Funktion ist.

function funName() {}  //空函数
Nach dem Login kopieren

Wenn Sie anonyme Funktionen verwenden, können Sie den Funktionsnamen weglassen.

function () {}  //匿名空函数
Nach dem Login kopieren

Die var-Anweisung und die Funktionsanweisung sind beide Deklarationsanweisungen. Die von ihnen deklarierten Variablen und Funktionen werden beim Vorkompilieren von JavaScript analysiert, was auch als Variablenheraufstufung und Funktionsheraufstufung bezeichnet wird. Während der Vorkompilierungsphase erstellt die JavaScript-Engine einen Kontext für jede Funktion, definiert ein Variablenobjekt und registriert alle formalen Parameter, privaten Variablen und verschachtelten Funktionen in der Funktion als Attribute für das Variablenobjekt.

Function()-Konstruktor

Verwenden Sie den Function()-Konstruktor, um schnell Funktionen zu generieren. Die spezifische Verwendung ist wie folgt: Die Parametertypen von

var funName = new Function(p1, p2, ..., pn, body);
Nach dem Login kopieren

Function () sind alle Zeichenfolgen, p1 ~ pn stellt die Parameternamenliste der erstellten Funktion dar, body stellt die Funktionsstrukturanweisung der erstellten Funktion dar und die Body-Anweisungen sind durch Semikolons getrennt.

Beispiel 1

Sie können alle Parameter weglassen und nur eine Zeichenfolge übergeben, um den Funktionskörper darzustellen.

var f = new Function ("a", "b", "return a+b");  //通过构造函数来克隆函数结构
Nach dem Login kopieren

Im obigen Code ist f der Name der erstellten Funktion. Dieselbe Funktion wird definiert und Funktionen mit derselben Struktur können mithilfe der Funktionsanweisung entworfen werden.

function f(a, b) {  //使用function语句定义函数结构
    return a + b;
}
Nach dem Login kopieren

Beispiel 2

Verwenden Sie den Function()-Konstruktor, um eine leere Funktionsstruktur zu erstellen, ohne Parameter anzugeben.

var f = new Function();  //定义空函数
Nach dem Login kopieren

Mit dem Function()-Konstruktor können Funktionen dynamisch erstellt werden. Er beschränkt Benutzer nicht auf den durch die Funktionsanweisung vorab deklarierten Funktionskörper. Durch die Verwendung des Function()-Konstruktors können Sie die Funktion als Ausdruck und nicht als Struktur verwenden, sodass sie flexibler einsetzbar ist. Der Nachteil besteht darin, dass der Function()-Konstruktor während der Ausführung kompiliert wird, die Ausführungseffizienz sehr gering ist und seine Verwendung im Allgemeinen nicht empfohlen wird.

Anonyme Funktion (Funktionsliteral)

Funktionsliteral wird auch als anonyme Funktion bezeichnet, das heißt, die Funktion hat keinen Funktionsnamen und enthält nur das Funktionsschlüsselwort, Parameter und den Funktionskörper. Die spezifische Verwendung ist wie folgt:

function ([args]) {
    statements
}
Nach dem Login kopieren

Beispiel 1

Der folgende Code definiert ein Funktionsliteral.

function (a, b) {  //函数直接量
    return a + b;
}
Nach dem Login kopieren

Im obigen Code sind Funktionsliterale grundsätzlich dasselbe wie die Verwendung von Funktionsanweisungen zum Definieren von Funktionsstrukturen, und ihre Strukturen sind festgelegt. Das Funktionsliteral gibt jedoch keinen Funktionsnamen an, sondern verwendet direkt das Schlüsselwort function, um die Struktur der Funktion darzustellen. Diese Art von Funktion wird auch als anonyme Funktion bezeichnet.

Beispiel 2

Eine anonyme Funktion ist ein Ausdruck, also ein Funktionsausdruck, keine Aussage über die Funktionsstruktur. Als nächstes weisen Sie der Variablen f die anonyme Funktion als Wert zu.

//把函数作为一个值直接赋值给变量 f
var f = function (a, b) {
    return a + b;
};
Nach dem Login kopieren

Wenn die Funktionsstruktur einer Variablen als Wert zugewiesen wird, kann die Variable als Funktion aufgerufen werden und die Variable zeigt auf die anonyme Funktion.

console.log(f(1,2));  //返回值3
Nach dem Login kopieren

Beispiel 3

Anonyme Funktionen dienen als Werte und können an komplexeren Ausdrucksoperationen teilnehmen. Für das obige Beispiel können Sie den folgenden Code verwenden, um den integrierten Vorgang der Funktionsdefinition und des Funktionsaufrufs abzuschließen.

console.log(  //把函数作为一个操作数进行调用
    (function (a,b) {
        return a + b;
    })(1, 2));  //返回数值3
Nach dem Login kopieren

【Verwandte Empfehlungen: Javascript-Lern-Tutorial

Das obige ist der detaillierte Inhalt vonSo schreiben Sie eine benutzerdefinierte JavaScript-Funktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!