Module prin Închideri în JavaScript
Problema descrisă mai sus este caracteristică pentru orice limbaj de programare. Ca soluție, se folosesc așa-numitele module.
Un modul reprezintă o anumită construcție, făcută în așa fel încât variabilele și funcțiile acestei construcții să fie vizibile doar în interiorul ei și să nu interfereze cu nimic din exterior.
În JavaScript există mai multe tipuri de module. Cele mai simple module prin închideri sunt create folosind apelarea imediată a funcției, astfel:
;(function() {
// codul modulului aici
})();
Variabilele și funcțiile create într-un astfel de modul, nu vor fi vizibile în afara acestui modul:
;(function() {
let str = 'variabila modulului';
function func() {
alert('funcția modulului');
}
})();
// Aici variabilele și funcțiile modulului sunt inaccesibile:
alert(str);
alert(func);