//深拷贝和浅拷贝
//1.浅拷贝只是增加一个指针指向已经存在内存地址
//2.深拷贝增加一个指针并且申请一个新的内存,让这个新增加的指针指向这个新的内存
//3.使用深拷贝的情况下,释放内存的时候,不会因为出现浅拷贝释放同一个内存错误
//4.潜复制,就是把指向内存引用地址复制了,如果原地址发生改变,那么浅复制出来的对象也会相应改变
//5.深复制,在计算机中重新开辟一块新内存地址用于存放复制的对象
function deepCopy(skt){
let fvb = {};
for(let key in skt){
if(typeof skt[key] === "object"){
if(Array.isArray(skt[key])){
fvb[key] = [];
for(let i in skt[key]){
fvb[key][i] = skt[key][i];
}
}else{
fvb[key] = deepCopy(skt[key]);
}
}else{
fvb[key] = skt[key];
}
}
return fvb;
}
let kt = {
name:"zhansan",
age:22,
books:{
life:"中国",
mook:"大数据"
}
}
05-25
889