Heim > Web-Frontend > js-Tutorial > Was ist ein sofort aufgerufener Funktionsausdruck (IIFE) in JavaScript?

Was ist ein sofort aufgerufener Funktionsausdruck (IIFE) in JavaScript?

Susan Sarandon
Freigeben: 2025-01-04 00:53:42
Original
525 Leute haben es durchsucht

What is an Immediately-Invoked Function Expression (IIFE) in JavaScript?

Das (function() { } )()-Konstrukt in JavaScript verstehen

Das (function() { } )()-Konstrukt, Auch als „Sofort aufgerufener Funktionsausdruck“ (IIFE) bekannt, handelt es sich um ein einzigartiges Muster, das in JavaScript verwendet wird, um Funktionen unmittelbar nach ihrer Erstellung zu definieren und auszuführen. Im Gegensatz zu Event-Handlern, die durch bestimmte Ereignisse ausgelöst werden, wird ein IIFE ausgeführt, sobald es auftritt.

Syntax und Struktur

Ein IIFE besteht aus zwei Hauptteilen:

  • Umbruch von Ausdrücken: Im ersten Teil geht es darum, einen Funktionsausdruck in Klammern zu setzen: (function() { } ). Dadurch wird eine Funktion definiert, aber noch nicht aufgerufen.
  • Sofortiger Aufruf: Um die Funktion auszuführen, wird am Ende ein zusätzlicher Satz Klammern hinzugefügt: (function() { } ) (). Dieser Teil ruft die Funktion sofort auf.

Erklärung

Die äußeren Klammern erstellen einen Ausdruck, der die Funktionsdefinition enthält. Die inneren Klammern ohne Argumente bewirken, dass die Funktion automatisch ausgeführt wird.

Vorteile von IIFEs

IIFEs bieten mehrere Vorteile:

  • Namespace-Datenschutz: Variablen und Funktionen innerhalb eines IIFE haben einen Gültigkeitsbereich innerhalb der Funktion und verhindern so dies Verschmutzung des globalen Namensraums.
  • Wiederverwendbarkeit von Code: IIFEs können zur Modularisierung von Code verwendet werden, was die Wiederverwendung in verschiedenen Teilen der Anwendung erleichtert.
  • Leistung Optimierung: Durch das Einschließen des Codes in ein IIFE kann der Parser ihn vorher optimieren Ausführung.

Beispiel

Betrachten Sie diesen Codeblock:

(function() {
  var myVariable = 'Hello';
  console.log(myVariable);
})();
Nach dem Login kopieren

Wenn dieser Code ausgeführt wird, ist die Variable myVariable nur innerhalb von zugänglich das IIFE. Außerhalb der Funktion bleibt sie undefiniert.

Unterscheidung von document.onload

Während IIFEs und document.onload beide eine sofortige Ausführung beinhalten können, unterscheiden sie sich im Zweck. document.onload ist ein Ereignishandler, der darauf wartet, dass das DOM geladen wird, bevor er seine Funktion ausführt. IIFEs hingegen werden unabhängig von Ereignissen ausgeführt und werden hauptsächlich zur Kapselung und Wiederverwendung von Code verwendet.

Das obige ist der detaillierte Inhalt vonWas ist ein sofort aufgerufener Funktionsausdruck (IIFE) in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage