不改变原数组的方法有11种,它们分别是(concat, map, filter, join, every, some, indexOf, slice, forEach, reduce, reduceRight),本文先介绍前6个。
concat:数组合并
该方法可以连接两个或多个数组,并将新的数组返回
let arr1 = [1, 2, 3]
let arr2 = [4, 5, 6]
let arr3 = arr1.concat(arr2)
console.log(arr1, arr2, arr3)
//打印结果:[1, 2, 3], [4, 5, 6], [1, 2, 3, 4, 5, 6]
map:数组映射
用于遍历原数组的每一项,返回一个新的数组,原数组不改变,该方法有三个参数:value:遍历项的数据,index:遍历项的索引,self:数组自身
let arr = [0, 1, 2]
let arr1 = arr.map((value, index, self)=>{
return `${value + 1},${index},${self === arr}`
}
console.log(arr1) //['1,0,true', '2,1,true', '3,2,true']
filter:数组过滤
过滤数组中的元素并返回一个新数组
let arr = [1, 2,