Middle
¿Cómo funciona un cierre en JavaScript? Explícalo con un ejemplo de la variable index y la función run en tu solución.
sobes.tech AI
Respuesta de la IA
En JavaScript, un cierre es una función que recuerda su entorno léxico, incluso si se llama fuera de su ámbito.
Veamos un ejemplo con la variable index y la función run:
function createRunner() {
let index = 0;
function run() {
console.log(index);
index++;
}
return run;
}
const runner = createRunner();
runner(); // 0
runner(); // 1
runner(); // 2
Aquí, la función run cierra la variable index de la función externa createRunner. Aunque createRunner ya ha terminado su ejecución, run sigue teniendo acceso a index y puede modificar su valor. Esto permite mantener el estado entre llamadas a la función run.
De esta manera, los cierres permiten crear funciones con variables privadas y mantener el estado sin usar variables globales.