ES6数组扩展运算符

时间:2022-04-11 22:08:57

1 扩展运算符的运用

(1)复制数组

  数组是复合的数据类型,直接复制的话,只是复制了指向底层数据机构的指针,而不是克隆一个全新的数组;

const a1=[1,2];

const a2= a1;

a2[0] = 2;

a1 //[2,2];

上面代码中,a2并不是a1的克隆,而是指向同一份数据的另一个指针,修改a2,会直接导致a1的变化 ;

扩展运算符提供了复制数组的简便写法

const a1=[1,2];

//写法一

const a2 =[...a1];

//写法二

const [...a2]=[a1];

(2) 合并数组

const arr1=[a];

const arr2=[b,c];

const arr3=[d];

//es5的合并数组

arr1.concat(arr2,arr3);

//es6的合并数组

[..arr1....arr2,...arr3];