Heim > Artikel > Web-Frontend > Welche Möglichkeiten gibt es, Javascript-Funktionen zu schreiben?
So schreiben Sie Funktionen: 1. „function function name(){}“ 2. „var function name = function(){}“ 3. „(function(){...})()“; 4. „ (function(){…}())“; 5. „$(function(){})“.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer.
Javascript ist lockerer als andere Programmiersprachen, daher ist Javascript-Code voller seltsamer Schreibweisen, und manchmal ist er nur verschwommen. In diesem Artikel geht es darum, wie man JavaScript-Funktionen schreibt.
In Javascript gibt es nur Objekte. Variablen sind Objekte und Funktionen sind ebenfalls Objekte. Solange Sie wissen, was Ihr Objekt ist, verwenden Sie es einfach so, wie es verwendet wird.
Javascript ist universell für schwache Typen, Objekte, Instanzen, Funktionen und Methoden. Die Unterscheidung muss nicht so klar sein.
1. Konventionelles Schreiben:
// 函数的定义 function foo() { alert('常规写法'); } // 函数的调用 foo()
Dieses Schreiben ist die bekannteste und am einfachsten zu verstehende Schreib- und Aufrufmethode, dann lesen Sie weiter
2. Anonymes Funktionsschreiben
// 函数的定义 var foo = function(){ alert('匿名函数定义'); } // 函数的调用 foo()
Die Funktionsdefinition wird anonymisiert, wodurch die Benennung entfällt. Gleichzeitig wird die Variable zum Synonym für die Funktion. Siehe
3
// 定义 var test = { fun1: function(){ }, fun2: function(){ } } // 调用 test.fun1(); test.fun2();Variablen in Javascript sind sehr mächtig und können viele Dinge darstellen.
4. Fügen Sie dem Objekt im Konstruktor Methoden hinzu
// 给对象添加方法 var fun = function(){ }; // 定义函数对象 fun.prototype.test = function(){ alert('这是在在foo函数上的原始对象上添加test方法,构造函数中用到'); } // 调用 var myfun = new fun(); // 创建对象 myfun.test(); // 调用对象属性Fügen Sie Methoden über das Schlüsselwort „prototyp“ hinzu.
5. Selbstausführende Funktionen ( function(){…} )() und ( function(){…} () )
Die zuvor erwähnte Funktionsdefinition ist von der Aufrufzeit getrennt werden hier sofort besprochen und gemeinsam umgesetzt. ( function(){…} )() und ( function(){…} () ) sind zwei gängige Methoden zum Schreiben von JavaScript-Funktionen zur sofortigen Ausführung. Zuerst dachte ich, es sei eine anonyme Funktion in Klammern, und Dann wurde am Ende eine Klammer hinzugefügt, um schließlich den Zweck zu erreichen, sie sofort nach der Definition der Funktion auszuführen. Um die unmittelbare Ausführung von Funktionen zu verstehen, müssen Sie zunächst einige grundlegende Funktionskonzepte verstehen.Funktionsdeklaration, Funktionsausdruck, anonyme Funktion
Funktionsdeklaration: function fnName () {…}; Verwenden Sie das Schlüsselwort function, um eine Funktion zu deklarieren, und geben Sie dann einen Funktionsnamen an, der Funktionsdeklaration genannt wird.
Funktionsausdruck var fnName = function () {...}; Verwenden Sie das Schlüsselwort function, um eine Funktion zu deklarieren, aber geben Sie der Funktion keinen Namen. Schließlich wird die anonyme Funktion einer Variablen namens Function zugewiesen Ausdruck, die häufigste Form der Funktionsausdrucksyntax.
Anonyme Funktion: Funktion () {}; Verwenden Sie das Schlüsselwort function, um der Funktion einen Namen zu geben. Daher wird sie als anonyme Funktion bezeichnet. Es gibt viele anonyme Funktionen Wenn Funktionen einer Variablen zugewiesen werden, wird eine Funktion erstellt, die einem Ereignis zugewiesen wird, ein Ereignishandler wird oder einen Abschluss erstellt usw.
Der Unterschied zwischen Funktionsdeklaration und Funktionsausdruck besteht darin, dass 1 Wenn die Javascript-Engine den Javascript-Code analysiert, „Funktionsdeklaration“ wird die Funktionsdeklaration in die aktuelle Ausführungsumgebung (Bereich) verschoben, während der Funktionsausdruck Der Ausdruck muss warten, bis die Javascirtp-Engine die Zeile erreicht, in der sie ausgeführt wird, und analysiert dann den Funktionsausdruck Zeile für Zeile von oben nach unten 2. Sie können nach dem Funktionsausdruck Klammern hinzufügen, um die Funktionsdeklaration sofort aufzurufen nicht möglich ist, können Sie Called nur in der Form von fnName() verwenden. Hier sind zwei Beispiele für den Unterschied.// 方式1: ( function(){…} () ) ( function(){alert('hello world, I am coming');}() ); // 函数有参数的情况,有时为确保执行,前面加; // 看到别人的插件,你会发现人家开头处加了一个";",这样就算页面js有错误,加载运行他的插件也能保证运行,如: ;(function(e){alert(e);}('hello world')); // 方式2:( function(){…} )() (function(){alert('hello');})(); // 有时在前面加运算符,常见的是!与void !function(){alert('hello');}(); void function(){alert(2);}();
6 $(function(){}) Schreibweise
$ (function(){/<em>…</em>/});
ist $ Die Abkürzung von (document).ready(function(){/<em>…</em>/})
ist eine Rückruffunktion, die nach dem Laden des DOM ausgeführt wird und nur einmal ausgeführt wird. $( document ).ready(function() { console.log( "ready!" ); });
$ (function(){/<em>…</em>/});
是 $(document).ready(function(){/<em>…</em>/})
的简写形式,是在DOM加载完成后执行的回调函数,并且只会执行一次。$(function() { console.log( "ready!" ); });
与如下写法等价
rrreee在一个页面中不同的js中写的$(function(){/<em>…</em>/});
entspricht der folgenden Schreibmethode
$(function(){/<em>…</em>/});
Funktion, die in verschiedenen JS auf einer Seite geschrieben ist, wird ausgeführt in Reihenfolge entsprechend der Reihenfolge von js. 【Empfohlenes Lernen:
Das obige ist der detaillierte Inhalt vonWelche Möglichkeiten gibt es, Javascript-Funktionen zu schreiben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!