Junior — Middle
Kun je uitleggen wat een closure is in JavaScript en hoe het werkt?
sobes.tech AI
Antwoord van AI
Closure in JavaScript is een functie die het omgevingsgevoel «onthoudt» waarin het is gemaakt, zelfs als die omgeving niet meer actief is. Simpel gezegd, een functie binnen een andere functie kan na het voltooien toegang krijgen tot de variabelen van de externe functie.
Dit werkt omdat bij het maken van een functie een verwijzing wordt opgeslagen naar de lexicale omgeving waarin deze is gedeclareerd.
Voorbeeld:
function buiten() {
let teller = 0;
return function binnen() {
teller++;
console.log(teller);
};
}
const teller = buiten();
teller(); // 1
teller(); // 2
Hier sluit binnen de variabele teller van buiten af en bewaart de staat tussen de aanroepen.