ES6展开运算符应用于数组拷贝的机制

  利用展开运算符进行数组拷贝,采用的是浅拷贝,即引用的是同一个内存地址。但是当两个数组其中一个进行了变动,发生变动的节点会重新开辟出内存空间,其它未改变的节点依然引用同样的内存块。具体看如下代码示例:

let a=[1,2,3];
let b=[4,5];
let c=[...a,...b];
console.log(a[0]===c[0]);//true
a[0]=9;
console.log(a[0]===c[0]);//false
console.log(a[1]===c[1]);//true
原文地址:https://www.cnblogs.com/ximenxiazi/p/13219536.html