var obj ={
a:'xxx',
b:'yyy',
obj1:{
a:'xxx',
b:'yyy',
}
}
const deep =(obj)=>{
// 检查输入是否是对象
if (typeof obj !== 'object' || obj === null) {
return obj; // 如果不是对象则直接返回原始值
}
// 创建一个新的空对象或数组,用于存储拷贝后的值
const copy = Array.isArray(obj) ? [] : {};
// 遍历原始对象的属性
for (let key in obj) {
if (obj.hasOwnProperty(key)) {
// 对每个属性进行递归拷贝
copy[key] = deep(obj[key]);
}
}
return copy;
}
console.log(deep(obj))