Object.assign()是浅拷贝

时间:2023-03-09 20:55:09
Object.assign()是浅拷贝

浅拷贝: 复制的值指向同一个内存地址

深拷贝:复制的值指向新的内存地址

var a = {
xm: {
name: 'xiaoming'
}
}
var b = Object.assign({}, a)
a.xh = {
name: 'xiaohong',
age: 18
}
a.xm.age = 17
console.log(b)
// {
// xm: {
// name: 'xiaoming',
// age: 17
// }
// }

Object.assign()只对第一级进行了深拷贝 以下各级都是浅拷贝