ES5的数组方法:一维数组方法一览
ES6弥补了ES5的一些不足,为用户提供了更多的数组方法,以简便用户的操作。
扩展运算符
let arr1 = [1,2,3];
let arr2 = arr1;
arr2[1] = 10;
console.log(arr1);
这样的操作只是完成了数组的浅拷贝,当改变arr2中的元素,arr1也会随之改变。
那么如何完成数组的深拷贝呢?
解决方法1:使用for循环
let arr1 = [1,2,3];
let arr2 = [];
for(let i=0;i<arr1.length;i++){
arr2.push(arr1[i]);
}
console.log(arr2);
解决方法2:使用concat
let arr1 = [1,2,3];
let arr2 = [].concat(arr1);
console.log(arr2);
解决方法3:扩展运算符,能将一个数组或类数组转换成以逗号隔开的列表
let arr1 = [1,2,3];
let arr2 = [...arr1];
console.log(arr2);