Middle
Kas ir slēgums? Vai vari to izskaidrot?
sobes.tech AI
Atbilde no AI
Aizvērums — tā ir funkcija kopā ar tās leksisko vidi, kurā tā tika izveidota. Tas nozīmē, ka funkcija „atceras“ ārējās redzes lauka mainīgos, pat ja šī ārējā funkcija jau ir pabeigusi izpildi.
Piemērs JavaScript:
function makeCounter() {
let count = 0;
return function() {
count++;
return count;
};
}
const counter = makeCounter();
console.log(counter()); // 1
console.log(counter()); // 2
Šeit iekšējā funkcija saglabā piekļuvi mainīgajam count no ārējās funkcijas makeCounter, radot aizvērumu (closure). Tas ļauj saglabāt stāvokli starp funkcijas izsaukumiem.