我想更好地組織我的JavaScript。我的目標是擁有模塊化體系結構,我可以分解成單獨的文件(sitename.js,sitename.utils.js等)。這兩個JavaScript模式有什麼區別
我想知道這兩種模式的優點和缺點,哪一種更適合打入生活在單獨文件中的模塊。
模式#1(模塊圖案)
var MODULE = (function() {
//private methods
return {
common: {
init: function() {
console.log("common.init");
}
},
users: {
init: function() {
console.log("users.init");
},
show: function() {
console.log("users.show");
}
}
}
})();
模式#2(單)
var MODULE = {
common: {
init: function() {
console.log("common.init");
}
},
users: {
init: function() {
console.log("users.init");
},
show: function() {
console.log("users.show");
}
}
};
首先想到的是模式1允許初始化代碼,它可能包含立即超出範圍的變量或函數聲明,因此不會污染封閉範圍。 – Pablo