1、concat()
a=[]; a.concat ([ 1,2,3,4 ]; 在这种情况下,a仍然是[],返回的结果是合并后的值。 concat ) )方法不更改原始数组,只返回合并后的新数组,因此必须将返回的值指派给a才能获得a的合并值。
a=a.concat ([ 1,2,3,4 ];2.、for循环 + push() 或者用ES6的扩展运算符…
for (vart in (1,2,3,4 ) ) a.push ) t; }或
a.push (…[ 1,2,3,4 ];3、push.apply()
b=[]; b.push.apply(b,[ 1,2,3,4 ] ); push (和push.apply ) )之间的差异:
例如:
a.push ([ 1,2,3,4 ]; b.push.apply(b,[ 1,2,3,4 ] ); 结果如下。
a :
[array(4) ]0: (4)4) [ 1,2,3,4 ] length :此时b :
[ 1,2,3,4 ]即a[0]与b相同。
当然,也可以使用扩展运算符。
a.push (…[ 1,2,3,4 ]; 此时,a与b相同
建议使用Array.prototype.push.apply ()。 因为这个方法更有效率,但实际上与push.apply ) )方法的本质相同。