
// 深拷贝
// 使用递归,实现深拷贝:
function deepClone(obj) {
if (typeof obj !== 'object') return; // 如果不是对象就返回
let newObj = obj instanceof Array ? [] : {}; // 判断是数组还是对象
for (let key in obj) {
if (obj.hasOwnProperty(key)) { // 只复制原型上有的属性
newObj[key] = typeof obj[key] === 'object' ? deepClone(obj[key]) : obj[key]; // 递归复制所有嵌套的对象或数组
}
}
return newObj;
}