【发布时间】:2016-06-04 10:37:00
【问题描述】:
看下面的例子:
var foo = { bar : 0 };
function modify(obj)
{
obj = {};
}
modify(foo);
console.log(foo);
我在全局范围内的第一个对象保持不变。因为函数替换的不是对象而是引用的副本。
所以我的问题很简单。有谁知道一种解决方法,或者目前是否有 ECMAScript 功能正在开发中,或者是否有尝试过让这成为可能?
谢谢。
【问题讨论】:
-
您没有将 foo 作为函数的参数传递。顺便说一句,你不想以这种方式覆盖东西。了解无状态函数
-
你用一个参数定义
modify,但没有调用它。您的意思是用foo调用它吗? -
不,这不是 JS 现在或将来的工作方式。
-
是的,我做到了。改了
标签: javascript pass-by-reference