问题描述:将一个数组的所有元素 push 到另一个数组中
123456 var a = [1, 2, 3],b = [4, 5, 6];==>a = [1, 2, 3, 4, 5, 6]或者得到一个新的数组c = [1, 2, 3, 4, 5, 6]
方式一:使用 ES6 的 spread operator
特性
|
|
上面这段代码经过 babel 编译后,变成:123var a = [1, 2, 3], b = [4, 5, 6];a.push.apply(a, b);
所以,如果不想用 spread operator
ES6 这个新的特性的话,也可以如下:123456var a = [1, 2, 3], b = [4, 5, 6];a.push.apply(a, b);// 或者Array.prototype.push.apply(a, b);
方式二:使用 concat
方法
The concat() method is used to merge two or more arrays. This method does not change the existing arrays, but instead returns a new array.(合并两个或者数组,返回一个新的结果数组)
Syntax
var new_array = old_array.concat(value1[, value2[, …[, valueN]]])
Parameters
valueN: Arrays and/or values to concatenate into a new array.
|
|
方式三:使用数组构造函数 Array constructor
|
|
上面这段代码经过 babel 编译后,变成:
|
|