JavaScript数组对象的深拷贝

2021-11-18  本文已影响0人  别来无恙_ly

1、简单实现

let copy = JSON.parse(JSON.stringify(boj));

2、高逼格递归实现深拷贝

function copy(obj){
  let newObj = obj.constructor === 'Object' ? {} : [];
  //判断是否为对象类型,不是则返回
  if(typeof obj !== 'object'){
    return;
  }
  for(let key in obj){
     //判断子级是否为对象,是则递归遍历
    newObj[key] = typeof obj[key] === 'object' ? 
    copy(obj[key]) : obj[key]
  }
  return newObject;
}

数据过多影响性能,有时候我们仅需对对象中某个值进行深拷贝,???

上一篇下一篇

猜你喜欢

热点阅读