概念
在模块模式的基础上,在返回的私有范围内,重新定义所有的 函数和变量。并返回一个匿名的对象。他拥有所有指向私有函数的指针。
实例
var myRevealingModule = function(){
var privateVar = "Ben ",
publicVar = "hello word";
function privateFunction (){
console.log("NAME:" + privateVar);
}
function publicSetName (strName){
privateName = strName
}
function publicGetName () {
privateFunction();
}
return {
setName : publicSetName,
greeting :privateVar,
getName : publicGetName
}
}();
myRevealingModule.setName('mps');
相当于在return的 时候不直接return 会私有属性和方法的名称 而是自己定义一套命名然后全部放在一个匿名函数里面 整体返回 使用的时候你只知道自己定义的名称,不可以使用私有的任何提示信息。