理解这个之前我们需要对js的数据类型,堆内存和栈内存做好充分的理解
深拷贝与浅拷贝的概念:
深拷贝可以理解为指向两个不同的内存地址
浅拷贝可以理解为指向同一个内存地址

下面是一个浅拷贝的例子:
数组的浅拷贝:
var arr=[1,2,3],arr1=[];
arr1=arr;
arr1[0]=0;
console.log(arr)=> [0, 2, 3];

对象的浅拷贝:
var obj={a:1};
var obj1=obj;
obj1.b=2;
console.loh(obj)=>{a: 1, b: 2}

js的深拷贝与浅拷贝
数组实现深拷贝的一些方法
1.concat()
2.slice()
3.es6的扩展运算符
4.遍历复制

对象实现深拷贝的一些方法

  1. JSON.parse(JSON.stringify())
  2. 递归方法
  3. 扩展运算符
  4. Object.assign()

相关文章:

  • 2018-03-07
  • 2021-03-09
  • 2019-11-02
  • 2018-09-30
  • 2020-05-01
  • 2020-04-17
  • 2018-06-14
猜你喜欢
  • 2018-02-05
  • 2017-12-14
  • 2018-12-10
  • 2019-06-29
  • 2019-03-06
  • 2021-06-16
  • 2019-10-31
  • 2019-03-07
相关资源
相似解决方案