1. 使用 concat
方法 ==》不改变原数组
concat
方法可以将多个数组或值合并成一个新数组。
const arr1 = [1, 2, 3] const arr2 = [4, 5, 6] const mergedArr = arr1.concat(arr2) // [1, 2, 3, 4, 5, 6]
2. 使用展开运算符 (...
) ==》不改变原数组
展开运算符 ...
可以用于展开数组,将其元素插入到另一个数组中。
const arr1 = [1, 2, 3] const arr2 = [4, 5, 6] const mergedArr = [...arr1, ...arr2] // [1, 2, 3, 4, 5, 6]
3. 使用 Array.from
方法 ==》不改变原数组
Array.from
方法可以从类数组对象或可迭代对象创建一个新的数组实例。
const arr1 = [1, 2, 3] const arr2 = [4, 5, 6] const mergedArr = Array.from(arr1).concat(arr2) // [1, 2, 3, 4, 5, 6]
4. 使用 Array.prototype.reduce
方法 ==》不改变原数组
reduce
方法可以将数组中的所有元素汇总成一个值,也可以用于合并数组。
const arr1 = [1, 2, 3] const arr2 = [4, 5, 6] const mergedArr = arr2.reduce((result, current) => {result.push(current)return result }, [...arr1]) // [1, 2, 3, 4, 5, 6]
5.使用 push
方法 =》修改原数组
push
方法可以将一个数组的元素追加到另一个数组末尾,修改原数组。
const arr1 = [1, 2, 3]
const arr2 = [4, 5, 6]
arr1.push(...arr2) // arr1 变为 [1, 2, 3, 4, 5, 6]
6. 使用 Array.prototype.splice
方法==》修改原数组
splice
方法可以修改原数组,用于在指定位置插入新元素。
const arr1 = [1, 2, 3] const arr2 = [4, 5, 6] arr1.splice(arr1.length, 0, ...arr2) // arr1 变为 [1, 2, 3, 4, 5, 6]
7. 使用 Array.prototype.concat.apply
方法 ==》不改变原数组
这种方法可以用于合并大量数组,但通常不太推荐使用,因为有更简洁的替代方法。
const arr1 = [1, 2, 3] const arr2 = [4, 5, 6] const mergedArr = Array.prototype.concat.apply(arr1, arr2) // [1, 2, 3, 4, 5, 6]
8. arr1.push.apply(arr1,arr2) ==》修改原数组
const arr1 = [1, 2, 3]
const arr2 = [4, 5, 6]
arr1.push.apply(arr1,arr2)
console.log(arr1) // [1, 2, 3, 4, 5, 6]