» Glossary » Module pattern
In JavaScript, it's known as Module pattern a technique by which we only expose the parts of our code that we are interested (the public API) through an object while we create a private state only accessible within the module:
var MyApp = (function( ){
var public = {};
var itemList = [];
public.addItem = function( item ) {
itemList.push( item );
}
public.getItemList = function(){
return itemList.splice(); // returns a new array
}
return public;
})( );
The Module pattern is an evolution of the Namespace pattern – it actually can be seen as a factory to create a namespace using IIFEs. One fundamental difference is that the module has
Recommended reading: