Модулі праз замыканні ў JavaScript
Апісаная вышэй праблема ўласцівая для любога мовы праграмавання. У якасці рашэння ўжываюць так званыя модулі.
Модуль уяўляе сабой нейкую канструкцыю, зробленую так, каб зменныя і функцыі гэтай канструкцыі былі бачныя толькі ўнутры яе і не перашкаджалі нікому звонку.
У JavaScript існуюць некалькі тыпаў модуляў. Самыя простыя модулі праз замыканні ствараюцца з дапамогай выкліку функцыі на месцы, вось так:
;(function() {
// тут код модуля
})();
Зменныя і функцыі, створаныя ў такім модулі, не будуць бачныя звонку гэтага модуля:
;(function() {
let str = 'зменная модуля';
function func() {
alert('функцыя модуля');
}
})();
// Тут зменныя і функцыі модуля недаступны:
alert(str);
alert(func);