js对象的深浅拷贝

来源:互联网 发布:淘宝收购饿了么 编辑:程序博客网 时间:2024/06/06 03:51

有一个对象a,新建一个对象b,需要把对象a的值给对象b,且改变对象b中的一个值,但又不影响到对象a。
实现如下:
方法一(其实就是把对象的属性遍历一遍,赋给新的对象。):

let aa={    'aa':1,    'bb':2,    'cc':3}let bb = new Object();bb.aa = 123123123;bb.bb = aa.bb;bb.cc = aa.cc;console.log(aa);    //{aa: 1, bb: 2, cc: 3}console.log(bb);    //{aa: 123123123, bb: 2, cc: 3}

方法二:

let aa={    'aa':1,    'bb':2,    'cc':3}let bb = new Object();let changeStr = JSON.stringify(aa);bb = JSON.parse(changeStr);bb.aa = 123123console.log(aa);    //{aa: 1, bb: 2, cc: 3}console.log(bb);    //{aa: 123123, bb: 2, cc: 3}
原创粉丝点击