Մոդուլներ փակումների միջոցով JavaScript-ում
Վերևում նկարագրված խնդիրը բնորոշ է ցանկացած ծրագրավորման լեզվի: Որպես լուծում օգտագործում են այսպես կոչված մոդուլներ:
Մոդուլը ներկայացնում է որոշակի կոնստրուկցիա, որն ստեղծված է այնպես, որ փոփոխականներն ու ֆունկցիաները այդ կոնստրուկցիայի տեսանելի լինեն միայն ներսում դրա և չխանգարեն դրսից:
JavaScript-ում գոյություն ունեն մոդուլների մի քանի տեսակներ: Ամենապարզ մոդուլները փակումների միջոցով ստեղծվում են ֆունկցիայի անմիջական կանչի միջոցով, ահա այսպես:
;(function() {
// այստեղ մոդուլի կոդն է
})();
Նման մոդուլում ստեղծված փոփոխականներն ու ֆունկցիաները տեսանելի չեն լինի այդ մոդուլից դուրս.
;(function() {
let str = 'մոդուլի փոփոխական';
function func() {
alert('մոդուլի ֆունկցիա');
}
})();
// Այստեղ մոդուլի փոփոխականներն ու ֆունկցիաները հասանելի չեն.
alert(str);
alert(func);