Sobes.tech
Junior

JavaScriptте жабыктыкты эмне үчүн колдонуш керек?

sobes.tech AI

AIден жооп

JavaScriptте жабуу (closure) — бул түзүлгөн чөйрөнү «эске алган» жана тышкы аймактагы өзгөрмөлөргө кирүүнү камтыган функция, ал эми бул тышкы функция иштөө аяктагандан кийин да.

Мунун кереги:

  • Функциялардын чакырылыштарынын ортосунда абалды сактоо.
  • Маалыматтарды капсулдоо, жеке өзгөрмөлөрдү түзүү.
  • Теңдештүү параметрлери менен функцияларды ишке ашыруу.
  • React hookтарында жабуулары функциялардын ичинде абал жана propsка кирүүнү сактоого жардам берет.

Мисал:

function makeCounter() {
  let count = 0;
  return function() {
    count += 1;
    return count;
  };
}

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

Бул жерде ички функция тышкы функциядан count өзгөрмөсүнө кирүүнү сактайт, even if makeCounter аяктагандан кийин да.