2013-05-05 30 views

回答

2

通过引用将对象添加到数组中。因此,当您执行bbb[0]时,它指的是您先前创建并修改的aaa的实例。

如果您不想要这种行为,则需要在添加对象之前克隆该对象。

bbb.push(clone(aaa))

至于clone()实施,如果您有jQuery的:

function clone(obj) { 
    return jQuery.extend({}, obj); 
} 

而且没有jQuery的:

function clone(obj) { 
    return JSON.parse(JSON.stringify(obj)); 
} 

Demo

+0

我怎样才能使控制台输出为“1,1”? – user1371699 2013-05-05 20:47:44

+0

看到编辑原来的答案 – xbonez 2013-05-05 20:48:23

+0

非常感谢!!!!! – user1371699 2013-05-05 20:53:30

0

你将一个aaa的引用传递给数组。所以当你改变aaa时,它会反映在数组的第一个元素中。