节省时间,贴一下代码,重点记录JS模块的使用方法:
// 立即执行函数,隔离作用域;
var testModule = (function(){
var counter = 0; // 作用域内部私有变量,仅作用域内可访问
return {
incrementCounter : function(){
return ++counter;
},
resetCounter: function(){
console.log("counter value prior to reset:", counter)
counter = 0;
}
}
})()
testModule.incrementCounter();
testModule.resetCounter();
var myNamespace = (function(){
var myPrivater = 0; // 内部私有变量
var myPrivateMethod = function(foo) //公有接口实现的私有辅助函数
{
console.log(foo)
}
return {
myPublicVar: "foo",
myPublicMethod: function(bar)
{
myPrivater++;
myPrivateMethod(bar)
}
}
})()
myNamespace.myPublicMethod("test")