Junior
À quoi sert l'utilisation d'une fermeture en JavaScript?
sobes.tech IA
Réponse de l'IA
Une fermeture (closure) en JavaScript est une fonction qui « se souvient » de l’environnement dans lequel elle a été créée, y compris l’accès aux variables de la portée externe, même si cette fonction externe a déjà terminé son exécution.
À quoi cela sert-il :
- Conserver l’état entre les appels de fonctions.
- Encapsulation des données, création de variables privées.
- Implémentation de fonctions avec des paramètres par défaut ou une application partielle.
- Dans les hooks React, les closures aident à conserver l’accès à l’état et aux props à l’intérieur des fonctions.
Exemple :
function makeCounter() {
let count = 0;
return function() {
count += 1;
return count;
};
}
const counter = makeCounter();
console.log(counter()); // 1
console.log(counter()); // 2
Ici, la fonction interne conserve l’accès à la variable count de la fonction externe, même après que makeCounter ait terminé.