手写 浅拷贝 深拷贝 你懂了啵
递归 浅拷贝
浅拷贝:引用类型指针还是指向原来的堆空间,基本类型复制会重新一份
深拷贝:
深拷贝:把一份内容,完全复制一份,引用类型的指针不是指向同一个堆空间,基本类型复制会重新一份
function copy(obj) {
let newobj = {}
for (let key in obj) {
if (obj[key] instanceof Object) {
newobj[key] = copy(obj[key]);
} else {
newobj[key] = obj[key]
}
}
return newobj;
};
let copyObj = copy({
name: '张三',
age: 10,
fn: {
name: "李四",
age: 12
}
});
console.log("copyObj===", copyObj);