Middle
Wie funktioniert eine Closure in JavaScript? Erklären Sie es anhand eines Beispiels mit der Variablen index und der Funktion run in Ihrer Lösung.
sobes.tech KI
Antwort von AI
In JavaScript ist eine Closure eine Funktion, die ihre lexische Umgebung speichert, auch wenn sie außerhalb ihres Geltungsbereichs aufgerufen wird.
Betrachten wir ein Beispiel mit der Variablen index und der Funktion run:
function createRunner() {
let index = 0;
function run() {
console.log(index);
index++;
}
return run;
}
const runner = createRunner();
runner(); // 0
runner(); // 1
runner(); // 2
Hier schließt die Funktion run die Variable index aus der äußeren Funktion createRunner ein. Obwohl createRunner seine Ausführung bereits beendet hat, hat run weiterhin Zugriff auf index und kann dessen Wert ändern. Dies ermöglicht es, den Zustand zwischen den Aufrufen der Funktion run zu bewahren.
Auf diese Weise erlauben Closures die Erstellung von Funktionen mit privaten Variablen und die Erhaltung des Zustands ohne die Verwendung globaler Variablen.