请给我一些链接,以帮助我理解这个
var obj = {
a: 1
};
(function(obj) {
obj = {
a: 2
};
})(obj);
console.log(obj.a);
注销1,而这
var obj = {
a: 1
};
(function() {
obj = {
a: 2
};
})();
console.log(obj.a);
退出2
答案 0 :(得分:-3)
这是因为在示例1中,您创建了一个新名称obj
作为参数,并且它被覆盖而不是使用传入的值。在示例2中,obj
被关闭并被替换。