Javascript 模塊化設計模式
阿新 • • 發佈:2018-07-19
模式 change new span scrip col return urn ... console.log(p3.getFirstName());
//console.log(p3.firstname()); //error , no access for p3.firstname
1.原始模式
function a(){...} function b(){...}
2.對象模式
var moduler = new object({ _count:0, m1:function(){...}, m2:function(){...} });
這種寫法會暴露模塊化成員,內部狀態可以被改變。
moduler._count =5;
3.模塊化模式
var moduler = (function(){ var _count=0; var m1 = function(){ ...} var m2 = function(){ ...} return {m1:m1,
m2:m2
}; })();
var p3 = (function(){
var firstname = "a";
function changeFirstName(name){
this.firstname = name;
}
function getFirstName(){
return this.firstname;
}
return {
getFirstName:getFirstName,
changeFirstName:changeFirstName
}
})();
p3.changeFirstName("p3 first");
//console.log(p3.firstname()); //error , no access for p3.firstname
Javascript 模塊化設計模式