我的理解是对象是通过引用传递的.我已经实现了如下的模块模式.
var myModule = (function(){
var obj = {};
return {
obj: obj,
updateObj: function(newObj) {
obj = newObj;
}
}
}())
myModule.obj; // {}
myModule.updateObj({foo:'bar'});
myModule.obj; // still {} :(
Run Code Online (Sandbox Code Playgroud)
我哪里错了?myModule.obj不是对内部obj var的引用吗?
编辑:结束了这个:
var myModule = (function(){
var public = {
obj: {},
updateObj: function(newObj) {
public.obj = newObj;
}
}
return public;
}())
Run Code Online (Sandbox Code Playgroud) javascript ×1