首页 > 其他 > 详细

深度拷贝(递归)

时间:2021-04-08 15:01:23      阅读:24      评论:0      收藏:0      [点我收藏+]

深拷贝的运用场景 :首先我们创建一个文件 要传输给后台的数据格式,然后拷贝要传输给后台参数的文件,因为需要多次调用,避免修改原数据

function deepClone(obj){
  let objClone = Array.isArray(obj) ? [] : {};        判断是对象还是数组
  if (obj && typeof obj === ‘object‘) {       判断数据类型  如果是对象的话进行循环
    for(let key in obj){   循环对象
      if (obj[key] && typeof obj[key] === ‘object‘){  判读对象中是否有嵌套
        objClone[key] = deepClone(obj[key]);   对象调用自己继续循环
      }else{
        objClone[key] = obj[key]    添加到对象中
      }
    }
  }
  return objClone;  返回对象
}

 

深度拷贝(递归)

原文:https://www.cnblogs.com/kangshuo/p/14631117.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!