zoukankan      html  css  js  c++  java
  • 复制一个对象内容给另一个对象

      有种情况,我们需要操作相同的数据,但是又不希望两者出现干扰的情况。比如,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 ,获取一个新的字符串,后再将字符串反转一下赋给一个新的变量,是不是很机智!!!

  • 相关阅读:
    Windows远程桌面跳板机无法复制粘贴
    无法打开“XXXX”,因为Apple无法检查其是否包含恶意软件。怎么解决?
    mac下的快捷键
    python:递归函数
    ps:新建Photoshop图像
    python-函数的参数
    python3-定义函数
    python3-调用函数
    python3-函数
    ps:界面概览
  • 原文地址:https://www.cnblogs.com/guofan/p/6773568.html
Copyright © 2011-2022 走看看