数据
var obj = {
id: 1,
name: "章三",
msg: {
age: 18,
},
color: ['red', 'green', 'yellow']
};
方法:
首先声明一个空的对象
const newObj = { }
封装深拷贝的函数
function deepCopy(newData,oldData){
// 通过for in 来遍历对象
for(let key in oldData){
if(oldData[key] instanceof Array ){
newData[key] = [ ]
deepCopy(newData[key],oldData[key])
}else if ( oldData[key] instanceof Object){
newData[key] = { }
deepCopy(newData[key],oldData[key])
}else {
newData[key] = oldData[key]
}
}
}
方法的调用以及传参 空对象 和数据
deepCopy(newObj,obj)
console.log( newObj) // 打印一下我们拷贝完的对象即可