继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

对象的深拷贝两种方法

Qyouu
关注TA
已关注
手记 449
粉丝 87
获赞 413

对象深拷贝,在项目中经常能使用的到.介绍两种方法;

methods 1

    let faker ={        name:{         xing:{ 
             first:'相赫',             second:'李'
        },        ming:'加油'
      },      age :23,      honour :['世界冠军','是','faker']
     }      let uzi = JSON.parse(JSON.stringify(faker))
      uzi.age = 22
      uzi.name.xing.first = '子豪'
      uzi.name.xing.second = '简'
      uzi.honour[2] = 'UZI'
      console.log(faker)      console.log(uzi)

/*JSON的深拷贝方式会忽略函数对象和原型对象,用的时候需谨慎,考虑实际运用 */

methods 2

   let smlz = {      name:'司马老贼'
    }   let SMLZ = Object.assign({},smlz)   
   console.log(smlz === SMLZ)   console.log(SMLZ)

/* Object.assign 存在目标对象和源对象传值,所以这里.目标对象传{}*/



作者:会拐弯的蜗牛
链接:https://www.jianshu.com/p/c77cfd73f4d1


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP