Middle
Wat is een closure? Kun je het uitleggen?
sobes.tech AI
Antwoord van AI
Sluiting — het is een functie samen met de lexicale omgeving waarin deze is gemaakt. Dit betekent dat de functie zich 'herinnert' variabelen uit de externe scope, zelfs als die externe functie al is voltooid.
Voorbeeld in JavaScript:
function makeCounter() {
let count = 0;
return function() {
count++;
return count;
};
}
const counter = makeCounter();
console.log(counter()); // 1
console.log(counter()); // 2
Hier behoudt de interne functie toegang tot de variabele count van de externe functie makeCounter, waardoor een closure ontstaat. Dit stelt je in staat om de staat tussen functie-aanroepen te behouden.