var a = {v: 1}
var b = a
b.v = 2
a.v == b.v // true
如果希望在改变b.v的时候a不变,……
var a = {v: 1}
var b = JSON.parse(JSON.stringify(a))
b.v = 2
a.v == b.v // false或者var a = {v: 1}
var b = Object.assign({}, a);
b.v = 2
a.v == b.v // false
本文通过JavaScript实例展示了深拷贝与浅拷贝的区别。浅拷贝仅复制对象的第一层属性,修改拷贝后的对象可能会影响原对象;而深拷贝则完全独立,即使修改拷贝后的对象也不会影响到原对象。

被折叠的 条评论
为什么被折叠?



