概念
module 模式 最初被用来定义一个类的私有和共有封装的办法。
在JavaScript中还有降低函数命名冲突的作用。
JS重没有私有共有的概念 不想PHP中定义类就 public 等方法
但是可以通过 函数作用域 使用闭包 的概念来完成
实例
var mynamespace = (function(){
var myPrivateVar = 0;
var myPublicVar = "foo"
var myPrivateMethod = function(foo){
console.log(foo);
console.log(myPrivateVar);
myPublicVar = foo;
}
return {
myPublicVar :myPublicVar,
myPublicFunction : function(bar){
myPrivateVar++;
myPrivateMethod(bar);
}
}
})();
在这段代码中,return 回来的两个方法 但是我们的 函数中定义的方法可以看成是私有的方法。