Junior
Waarvoor wordt een closure gebruikt in JavaScript?
sobes.tech AI
Antwoord van AI
Closure (afsluiting) in JavaScript is een functie die zich het omgeving herinnert waarin deze is gemaakt, inclusief toegang tot variabelen uit de externe scope, zelfs als die externe functie al is voltooid.
Waarvoor is dit nodig:
- Het bewaren van de toestand tussen functieaanroepen.
- Gegevensencapsulatie, het creëren van private variabelen.
- Implementatie van functies met standaardparameters of gedeeltelijke toepassing.
- In React-hooks helpen closures om toegang tot de staat en props binnen functies te behouden.
Voorbeeld:
function makeCounter() {
let count = 0;
return function() {
count += 1;
return count;
};
}
const counter = makeCounter();
console.log(counter()); // 1
console.log(counter()); // 2
Hier behoudt de interne functie toegang tot de variabele count uit de externe functie, zelfs nadat makeCounter is voltooid.