JavaScript使用闭包定义JS模块
可以使用下面的方法定义JS模块,对函数操作进行封装。
由于闭包的特殊属性,函数内的变量不会被销毁。
function myModule() {
// 私有的数据
var msg = 'aBcD';
function doSomething() {
console.log('doSomething()' + msg.toUpperCase());
}
function doOtherThing() {
console.log('doOtherThing' + msg.toLowerCase());
}
// 返回对象
return {
doSomething: doSomething,
doOtherThing: doOtherThing
};
}
var module = myModule();
module.doSomething();
module.doOtherThing();