js的数组拼接方法

方法一:concat方法拼接(返回一个新数组)

var a1 = [1,2,3,4,5];

var a2 = ['a','b','c'];

var newa = a1.concat(a2);

结果类型:object

concat方法:用于连接两个或多个数组,生成新数组,concat后面的数组时操作的时候数组的元素,而不是数组

方法二:join方法拼接(返回一个新数组)

var a1 = [1,2,3,4,5];

var a2 = ['a','b','c'];

var newa = a1.join()+','+a2.join();

返回结果:1,2,3,4,5,a,b,c   

结果类型:string

join方法:把数组的所有元素放入一个字符串,然后把这些字符串连接起来,在两个元素之间插入 separator 字符串而生成的。separator 在join()不添加分割符时是逗号(‘,’),在join('.')添加分割符时用提供的符号分割。

方法三:结合apply或者call使用

var a1 = [1,2,3,4,5];

var a2 = ['a','b','c'];

a1.push.apply(a1,a2);

结果类型:object

apply方法:编写用于不同对象的方法,将a1的push方法用在a1上,接收a2(数组类型)参数

var a1 = [1,2,3,4,5];

var a2 = ['a','b','c'];

a1.push.call(a1,...a2);

结果类型:object

call方法:调用一个对象的一个方法,以另一个对象替换当前对象,对象的参数为参数序列

说明:

call([thisObj[,arg1[, arg2[, [,.argN]]]]])

参数

1)thisObj   可选项。将被用作当前对象的对象。

2)arg1, arg2, , argN   可选项。将被传递方法参数序列。

方法四:es6的扩展运算符

var a1 = [1,2,3,4,5];

var a2 = ['a','b','c'];

a1.push(...a2)

结果类型:object

扩展运算符:好比rest参数的逆运算,将一个数组转化为逗号分割的参数序列,主要用于函数调用。

方法五:遍历数组

var a1 = [1,2,3,4,5];

var a2 = ['a','b','c']; 

a2.forEach((item) => {a1.push(item); })

结果类型:object

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐