Javascript结合了两个保持引用的对象

时间:2013-09-19 01:41:37

标签: javascript

我想做的一个简单例子:

data = {name: 'fred'};

newData = {};
newData.name = data.name;

newData.name = 'ted';

console.log(data.name); // I want this to be ted not fred

是否可以在Javascript中编辑第二个对象并让它修改第一个?我正在使用alloyui 1.5(yui 3.4.0)并尝试合并对象以创建数据表,因此数据显示在单行上,但它需要是可编辑的,因此需要指回原始对象。

这样的事情是否可能,或者我是否需要使用事件将数据推送回第一个对象?

2 个答案:

答案 0 :(得分:1)

如果对象的属性也是对象,则可以执行此操作。这有效:

data = {name: {first:'fred'}};

newData = {};
newData.name = data.name;

newData.name.first = 'ted';

console.log(data.name.first) // outputs ted

答案 1 :(得分:-1)

是的,您可以使用javascripts Object()将第一个(您的数据对象)的新对象引用为newData。 更改对象属性会反映到另一个

data = {name: 'fred'};

var newData = new Object(data);

newData.name = 'ted';

console.log(data.name);// outputs ted

您可以阅读有关Object()here

的更多信息