美文网首页
JavaScript数组对象的深拷贝

JavaScript数组对象的深拷贝

作者: 别来无恙_ly | 来源:发表于2021-11-18 14:43 被阅读0次

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;
}

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

相关文章

  • JavaScript数组对象的深拷贝

    1、简单实现 2、高逼格递归实现深拷贝 数据过多影响性能,有时候我们仅需对对象中某个值进行深拷贝,???

  • Javascript深拷贝

    什么是深拷贝 创建一个新的对象或数组时,将原对象/数组的“值”拷贝,而不是“引用”。 深拷贝 数组拷贝不存在多层嵌...

  • 2018-05-22

    数组与对象的深拷贝

  • C++封装(二)

    第2章 对象成员与对象数组 第3章 深拷贝与浅拷贝 浅拷贝: 深拷贝: 第4章 对象指针 对象指针: 栈中: 对象...

  • OC 数组mutableCopy能不能把数组里边的对象深拷贝?

    一. 数组深拷贝,数组中对象不实现NSCopying协议 Person类 使用 结果: 从结果来看虽然数组是深拷贝...

  • JavaScript数组(对象)的深拷贝和浅拷贝

    我们时常需要对某个变量进行复制,如果直接用赋值符号 a=b ,对于普通的数值、字符串来说,改变a或者b,都不会影响...

  • js深拷贝和浅拷贝区别

    浅拷贝和深拷贝的区别 1.浅拷贝:将源对象或者原数组的引用 ```直接赋给``` 新对象/新数组 ,新对象/新...

  • 深浅拷贝

    浅拷贝将原对象/原数组的引用直接赋值给新对象/新数组,新对象/新数组只是原对象/原数组的一个引用。 深拷贝将原对象...

  • 浅拷贝与深拷贝

    /*浅拷贝:拷贝地址*/ /*深拷贝:拷贝对象*/ 用Strong修饰不可变数组:浅拷贝 用Copy修饰不可变数组...

  • 深拷贝和浅拷贝

    1. 深拷贝和浅拷贝 1.浅拷贝: 将原对象或原数组的引用直接赋给新对象,新数组,新对象/数组只是原对象的一个引用...

网友评论

      本文标题:JavaScript数组对象的深拷贝

      本文链接:https://www.haomeiwen.com/subject/irudtrtx.html