Qu'est-ce qu'une closure
Une closure est une fonction qui garde accès à la portée lexicale où elle a été créée, même appelée ailleurs.
function counter() {
let n = 0;
return function () {
return ++n;
};
}
const inc = counter();
inc(); // 1
inc(); // 2
La fonction interne se souvient de n même après la fin de counter().
Où vous les croisez
- Module pattern (état privé).
- Callbacks avec données capturées.
- Hooks React (
useStateutilise une closure).