我检查了很多代码,看到很多人在做
module.exports = (function(){
return {
functionA: function() {
}
},
functionB: function() {
}
};
})();
Run Code Online (Sandbox Code Playgroud)
所以,为什么不只是做
module.exports = {
functionA: function() {
},
functionB: function() {
}
};
Run Code Online (Sandbox Code Playgroud)
谢谢!
小智 5
第一个示例允许您将变量隐藏在其自身的关闭范围内,该范围可以与返回对象的方法共享。例如,如果您执行以下操作...
var foo = (function(){
var x = 2;
return {
addToTwo: function(y){
return x + y;
},
subtractFromTwo: function(y){
return x - y;
}
}
};
Run Code Online (Sandbox Code Playgroud)
上面的示例示出了x可变保护和之间共享addToTwo和subtractFromTwo。第二个示例仅使您可以x在没有相同保护的情况下将其作为对象的一部分。
module.exports = {
x: 3,
functionA: function() {
return this.x;
},
};
Run Code Online (Sandbox Code Playgroud)
x 在此示例中可以更改。
| 归档时间: |
|
| 查看次数: |
1829 次 |
| 最近记录: |