深拷贝

深拷贝的方法

funciton deepClone(obj){
      let target= obj.constructor===Array?[]:{};//判断是否是数组或对象并保存
      for(let key in obj){
         if(obj.hasOwnProperty(key)){
              if(obj[key]&&typeof obj[key] === 'object'){
                  obj[key]=obj[key].constructor===Array?[]:{};//判断是否是数组或对象并保存
                  obj[key]=this.deepClone(obj[key]);//递归
              }else{
                 target[key]=obj[key]
              }
         }
      }
   return target
}

你可能感兴趣的:(深拷贝)