--- title: IIFE slug: Glossary/IIFE translation_of: Glossary/IIFE ---
Eine IIFE (Immediately Invoked Function Expression) ist eine JavaScript-Funktion, die ausgeführt wird, sobald sie definiert ist.
(function () { statements })();
Es handelt sich um ein Entwurfsmuster, das auch als selbstausführende anonyme Funktion bekannt ist und aus zwei Hauptteilen besteht:
()
eingeschlossen ist. Dies verhindert sowohl den Zugriff auf Variablen innerhalb des IIFE-Idioms als auch die Beeinträchtigung des globalen Geltungsbereichs.()
, durch den die JavaScript-Engine die Funktion direkt interpretiert.Die Funktion wird zu einem Funktionsausdruck, der sofort ausgeführt wird. Auf die Variable innerhalb des Ausdrucks kann von außerhalb nicht zugegriffen werden.
(function () { var aName = "Barry"; })(); // Variable aName is not accessible from the outside scope aName // throws "Uncaught ReferenceError: aName is not defined"
Die Zuweisung des IIFE an eine Variable speichert den Rückgabewert der Funktion, nicht die Funktionsdefinition selbst.
var result = (function () { var name = "Barry"; return name; })(); // Immediately creates the output: result; // "Barry"