Модули преку затворања во JavaScript
Опишаниот погоре проблем е карактеристичен за кој било програмски јазик. Како решение се користат таканаречени модули.
Модул претставува одредена конструкција, направена така што променливите и функциите на оваа конструкција се видливи само внатре во неа и не им пречат на никој однадвор.
Во JavaScript постојат неколку типови на модули. Наједноставните модули преку затворања се создаваат со помош на повик на функција на местото, вака:
;(function() {
// тука код на модулот
})();
Променливите и функциите, создадени во таков модул, нема да бидат видливи однадвор на овој модул:
;(function() {
let str = 'променлива на модулот';
function func() {
alert('функција на модулот');
}
})();
// Тука променливите и функциите на модулот се недостапни:
alert(str);
alert(func);