Sobes.tech
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.