Design pattern Module pomáhá implementovat klasický model softwarových modulů, který zapouzdřením proměnných a funkcí redukuje globální scope. Jedná se o jeden z nejpoužívanějších návrhových vzorů.
// definice promenne, co by module, ktera vse zapouzdruje var myFunc = (function() { var data = 'mydata'; return { changeData: function () { console.log(data); data = "changedData"; console.log(data); } } })(); myFunc.changeData();
V příkladu interně definované proměnné zůstávají pro ostatní kód skryté, protože jejich existence je omezena jen do volání definice samotného modulu (to je ten pár závorek před stredníkem). Jedná se o typický příklad javascriptového closure. Pro přístup k intertním datům modulu je potřeba volat funkci, nebo funkce vracejíci jako návratovou hodnotu definice modulu.