let user = {
name: 'zdx',
age: 18,
company: {
name: '设序',
address: '青浦'
},
hobbies: ['敲代码', '看电影', '运动']
}
function deepClone (arg) {
if (!arg || typeof(arg) !== 'object') return arg;
let res;
if (arg instanceof Array) {
res = [];
} else {
res = {};
}
for (let key in arg) {
if (arg.hasOwnProperty(key)) {
res[key] = deepClone(arg[key])
}
}
return res;
}
const userClone = deepClone(user);
user.name = 'let it be';
user.company.address = '闵行';
user.hobbies[1] = '旅游';
console.log(user);
console.log(userClone);
手写深拷贝deepClone
最新推荐文章于 2024-04-26 15:37:48 发布