Junior — Middle
Ի՞նչ դեր ունեն closures (փակվածություններ) JavaScript-ում և ինչու են դրանք օգտագործվում:
sobes.tech AI
Պատասխան AI-ից
JavaScript- ում փակագծեր (closures) այն ֆունկցիաներ են, որոնք «հիշում են» ստեղծման շրջապատը, ներառյալ արտաքին ֆունկցիայից փոփոխականների հասանելիությունը նույնիսկ այն ավարտվելուց հետո:
Փակագծերի դերը՝
- թույլ են տալիս ստեղծել մասնավոր փոփոխականներ և մեթոդներ՝ տվյալները ամփոփելով:
- օգտագործվում են պահպանված վիճակով ֆունկցիաներ ստեղծելու համար:
- օգնում են խուսափել գլոբալ տարածքի աղտոտումից:
- օգտագործվում են ֆունկցիոնալ ծրագրավորման մեջ՝ մասամբ կիրառվող արգումենտներով ֆունկցիաներ ստեղծելու համար:
Օրինակ՝
function makeCounter() {
let count = 0; // մասնավոր փոփոխական
return function() {
count += 1;
return count;
};
}
const counter = makeCounter();
console.log(counter()); // 1
console.log(counter()); // 2
Այստեղ, ներքին ֆունկցիան պահպանում է արտաքին ֆունկցիայից count փոփոխականի հասանելիությունը, ստեղծելով փակագիծ։