关于数组:如何遍历javascript对象并将值复制到新对象

How to loop through javascript object and copy values to new object

本问题已经有最佳答案,请猛点这里访问。

我在一个包含一些信息的页面上有一个javascript对象。我需要循环访问对象并将其复制到另一个对象。

这是我的起始代码

1
2
3
4
5
6
7
8
9
10
11
var p_tag = {};
var new_tag = {};
p_tag.abc='abc';
p_tag.def='def';
p_tag.ghi='ghi';

for (var key in p_tag) {
   if (p_tag.hasOwnProperty(key)) {
   console.log(key +"'s favorite fruit is" + p_tag[key]);
   }
}

我需要从p_标记中获取值,并将它们作为另一个对象复制到新的_标记中。

我可能不知道每一页上有什么可用的密钥,所以我会寻找一些可以通过所有可用的P_标记并将其复制到新的_标记的东西。

谢谢,


对对象进行深度复制的最简单方法:

1
var copy = JSON.parse(JSON.stringify(obj));

所以它基本上把你的对象变成了一个字符串,然后又变成了一个对象,对原始对象的引用为零。


只需将所有旧值分配给新值即可。

1
2
3
4
5
6
7
for (var key in p_tag) {
   if (p_tag.hasOwnProperty(key)) {
       console.log(key +"'s favorite fruit is" + p_tag[key]);

       new_tag[key] = p_tag[key];
   }
}