Moduly prostredníctvom uzávärov v JavaScripte
Opísaný problém je charakteristický pre akýkoľvek programovací jazyk. Ako riešenie sa používajú takzvané moduly.
Modul predstavuje určitú konštrukciu, urobenú tak, že premenné a funkcie tejto konštrukcie sú viditeľné len vnútri nej a nezasahovali do okolia.
V JavaScripte existuje niekoľko typov modulov. Najjednoduchšie moduly prostredníctvom uzávärov sa vytvárajú pomocou okamžitého volania funkcie, takto:
;(function() {
// tu je kód modulu
})();
Premenné a funkcie vytvorené v takomto module nebudú viditeľné zvonku tohto modulu:
;(function() {
let str = 'premenná modulu';
function func() {
alert('funkcia modulu');
}
})();
// Tu sú premenné a funkcie modulu nedostupné:
alert(str);
alert(func);