【发布时间】:2021-12-18 11:59:53
【问题描述】:
我在一次采访中得到了这个 sn-p 来调试。
var module = (function sumModule(){
var a = 0;
var b = 0;
const init = (a,b) =>{
a = a;
b = b;
}
function sum() {
return a+b;
}
return {
sum: sum,
init
}
})();
module.init(1,2);
console.log(module.sum())
返回的值为 0 (0+0),func init 中的 a 和 b 的赋值并没有覆盖全局的 var a 和 var b。为什么会这样,谁能解释一下?
注意:有人告诉我在不重命名函数参数(a,b) 的情况下修复它。
【问题讨论】:
标签: javascript node.js scope