一、该模式优缺点
1、优点:该模式可以使脚本语法更加一致,在模块代码底部,它很容易指出哪些函数和变量可以被公开访问,从而改善可读性。
2、缺点:如果一个私有函数引用一个公有函数,公有函数是不能被覆盖的。相对脆弱,谨慎使用
var myModule = function (){
var privateName = "Stephen Curry",
publicMsg = "Hey there!";
function privateHandle(){
console.log("Name:"+privateName);
}
function publicSetName(strName){
privateName = strName;
}
function publicGetName(){
privateHandle();
}
return {
setName : publicSetName,
greeting : publicMsg,
getName : publicGetName
}
}();
myModule.setName("James")
myModule.getName() //Name:James
myModule.greeting //"Hey there!"