码迷,mamicode.com
首页 > 其他好文 > 详细

复制一个对象内容给另一个对象

时间:2017-04-28 13:51:29      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:复制   获取   变量   最简   key   style   耦合   简单   str   

  有种情况,我们需要操作相同的数据,但是又不希望两者出现干扰的情况。比如,angular 中,使用指令绘制图像,双向绑定,当你选中改变数据的显示或隐藏标志时,你其实并不希望它重新绘制,因为它的数据并没有更新改变,但你改变了绑定的数据的一个微不足道的属性值,就会导致其重绘,那怎么办呢,只能再复制出一个相同对象,一个提供展示,一个提供点击不请求新数据。

  说的有点多,总之就是将一个对象的属性给另一个对象,最先想到的肯定是这样的:

var obj1={
    ‘name‘:‘AAA‘,
    ‘age‘:12
}
console.log(obj1);
var obj2 = obj1;

耦合了。。。更改一个对象属性值,另一个也会变,因为 obj1 是把对象的地址存储到了 obj2 变量值中,这并不是复制。

当然也可以进行循环然后将 key 和 value 复制给一个新的对象。

这个也能达到要求,但我们来说一个最简单的!

var json = JSON.stringify(obj1)
var obj3 = JSON.parse(json) 

使用转 json ,获取一个新的字符串,后再将字符串反转一下赋给一个新的变量,是不是很机智!!!

复制一个对象内容给另一个对象

标签:复制   获取   变量   最简   key   style   耦合   简单   str   

原文地址:http://www.cnblogs.com/guofan/p/6773568.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!