Junior — Middle
Aká je úloha closures v JavaScripte a na čo sa používajú?
sobes.tech AI
Odpoveď od AI
Zatvárania (closures) v JavaScripte sú funkcie, ktoré "si pamätajú" prostredie, v ktorom boli vytvorené, vrátane prístupu k premenným z vonkajšej funkcie aj po jej ukončení.
Úloha zatvorení:
- Umožňujú vytváranie súkromných premenných a metód, kapsuláciou dát.
- Používajú sa na vytváranie funkcií so zachovaným stavom.
- Pomáhajú predísť znečisteniu globálneho priestoru.
- Sú využívané vo funkcionálnom programovaní na vytváranie funkcií s čiastočne aplikovanými argumentmi.
Príklad:
function makeCounter() {
let count = 0; // súkromná premenná
return function() {
count += 1;
return count;
};
}
const counter = makeCounter();
console.log(counter()); // 1
console.log(counter()); // 2
Tu, vnútorná funkcia zachováva prístup k premennej count z vonkajšej funkcie, čím vytvára zatváranie.