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 аяктагандан кийин да.