深拷贝
- 判断传入值是否为对象
- 创造一个新对象,迭代传入对象进行赋值
- 对象的value为对象的话,递归调用函数
- 迭代完毕返回这个对象
- 传入非对象直接返回这个值
基础版本
function clone(target){
if(typeof target === 'object'){
const cloneTarget = {}
for(let key in target){
cloneTarget[key] = clone(target[key])
}
return cloneTarget
}else{
return target
}
}
小于 1 分钟