# Модули через замыкания в JavaScript

Описанная выше проблема характерна для любого языка программирования. В качестве решения применяют так называемые модули.

Модуль представляет собой некую конструкцию, сделанную так, чтобы переменные и функции этой конструкции были видны только внутри нее и не мешали никому снаружи.

В JavaScript существуют несколько типов модулей. Самые простые модули через замыкания создаются с помощью вызова функции на месте, вот так:

`;(function() { // тут код модуля })();`

Переменные и функции, созданные в таком модуле, не будут видны снаружи этого модуля:

`;(function() { let str = 'переменная модуля'; function func() { alert('функция модуля'); } })(); // Тут переменные и функции модуля недоступны: alert(str); alert(func);`
← →
↑
en ru