Junior — Middle
Care este rolul closure-urilor în JavaScript și pentru ce sunt utilizate?
sobes.tech AI
Răspuns de la AI
În JavaScript, closures (închideri) sunt funcții care "își amintesc" mediul în care au fost create, inclusiv accesul la variabilele dintr-o funcție externă chiar și după ce aceasta s-a încheiat.
Rolul closures:
- Permite crearea de variabile și metode private, încapsulând datele.
- Sunt utilizate pentru crearea de funcții cu stare păstrată.
- Ajută la evitarea poluării spațiului global.
- Sunt folosite în programarea funcțională pentru crearea de funcții cu argumente parțial aplicate.
Exemplu:
function makeCounter() {
let count = 0; // variabilă privată
return function() {
count += 1;
return count;
};
}
const counter = makeCounter();
console.log(counter()); // 1
console.log(counter()); // 2
Aici, funcția internă păstrează accesul la variabila count din funcția externă, creând o închidere.