我有一个JSON文本,如下所示:
var json_1 = {
"name": "Tim",
"toys": ["ball", "bat", "lego"]
};
现在我按如下方式克隆它:
var json_2 = json_1;
如果我从json_1
中删除一个玩具(使用splice()
),似乎也会从json_2
中删除相同的玩具。如何在不相互依赖的情况下创建副本?
发布于 2013-03-22 01:40:46
当你这样做的时候:
var json_2 = json_1
你实际上并不是在“克隆”这个对象,你只是给它起了个别名。因此,json_1上的所有操作都将镜像到json_2上,反之亦然。要真正克隆您的对象,请看一下:https://stackoverflow.com/a/728694/2003420
https://stackoverflow.com/questions/15554402
复制相似问题