I utgangspunktet kjøres all javascript-kode på en webside i "samme bås", og står i fare for å påvirke hverandre. En måte å unngå problemer på, er å pakke funksjonalitet (variabler, funksjoner, metoder..) inn i "moduler":
var module = (function() {
function runMe(number) {
message = "the number is " + number;
console.log(message)
}
var version = "1.0";
return {
run: runMe,
version: version
}
})();
module.run(5);
console.log("version " + module.version);