export function deepClone(obj) {
let result = typeof obj.splice === "function" ? [] : {};//obj为list时typeof obj.splice为'function',为对象时typeof obj.splice为'undefined'
if (obj && typeof obj === "object") {
for (let key in obj) {
if (obj[key] && typeof obj[key] === "object") {
result[key] = deepClone(obj[key]);
} else {
result[key] = obj[key];
}
}
return result;
}
return obj;
}
本文介绍了一个用于实现对象和数组深拷贝的JavaScript函数。通过递归遍历源对象的所有属性并复制它们,确保生成的新对象与原对象完全独立。适用于需要避免原始数据被意外修改的情况。
981

被折叠的 条评论
为什么被折叠?



