Sobes.tech
Junior — Middle

Роли closureҳо (пӯшишҳо) дар JavaScript чист ва барои чӣ истифода мешаванд?

sobes.tech AI

Ҷавоб аз AI

Қаптамалар (closures) — бұл JavaScript-те жасалған ортаға "еске түсіретін" функциялар; олар жасалған ортаны, соның ішінде сыртқы функциядан өзгермеліктерге қол жеткізуді, оның аяқталғаннан кейін де сақтайды.

Қаптамалардың рөлі:

  • Мәліметтерді капсулдау арқылы жеке өзгермеліктер мен әдістерді жасауға мүмкіндік береді.
  • Құрылып жатқан функциялар сақталған күймен пайдаланылады.
  • Жалпы аймақтың ластануын болдырмайды.
  • Функционалды бағдарламалауда, ішінара қолданылған аргументтері бар функцияларды жасау үшін пайдаланылады.

Мысал:

function makeCounter() {
  let count = 0; // жеке өзгермелі
  return function() {
    count += 1;
    return count;
  };
}

const counter = makeCounter();
console.log(counter()); // 1
console.log(counter()); // 2

Мұнда, ішкі функция сыртқы функциядан count өзгермелісіне қол жеткізуді сақтайды және қаптама құрады.