function deepclone(target) {
// 手写简易版深克隆 支持原始值,function,obj,array
if (typeof target === "object") {
if (target instanceof Array) {
const tempArr = [];
for (let i = 0, len = target.length; i < len; i++) {
tempArr.push(deepclone(target[i]))
}
return tempArr
} else {
const tempObj = {};
for (let item in target) {
tempObj[item] = deepclone(target[item])
}
return tempObj
}
} else {
return target
}
}
// 测试用例
testObj = {a:1,b:2,c:{d:3,e:[4,56]}};
resultObj = deepclone(testObj)
简单 deepclone
最新推荐文章于 2022-09-27 10:15:42 发布
该博客介绍了如何使用JavaScript手写一个简易版的深克隆函数,支持原始值、函数、对象和数组的克隆。通过递归遍历目标对象,创建一个新的副本,从而实现深度复制。文中提供了一个测试用例,展示如何对包含复杂嵌套结构的对象进行深克隆。
摘要由CSDN通过智能技术生成