javascript如何合并多个数组
如题,已有两个数组
var array1 = ["a", "b"]; var array2 = ["c", "d"];
我要合并后变成下面这样:
var array= ["a", "b", "c", "d"];
应该用什么方法呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
如题,已有两个数组
var array1 = ["a", "b"]; var array2 = ["c", "d"];
我要合并后变成下面这样:
var array= ["a", "b", "c", "d"];
应该用什么方法呢?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(3)
这里给出新的例子
代码段中修改部分前面以星号(*)标记出。
基本
执行:
arr1.concat(arr2, arr3);
返回:
[ 'a', 'b', 'c', 'c', [ 'd' ], 'e', undefined, null ]
考虑重复
执行:
concat(arr1, arr2, arr3);
返回:
[ 'a', null, undefined, 'e', [ 'd' ], 'c', 'b' ]
处理undefined和null
这里的undefined可能由数组本身存在的undefined元素引起,也可能由于delete引起。
执行:
concat(arr1, arr2, arr3);
返回:
[ 'a', 'e', [ 'd' ], 'c', 'b' ]
执行:
delete arr3[2]; concat(arr1, arr2, arr3);
返回:
[ 'a', [ 'd' ], 'c', 'b' ]
考虑数组
执行:
concat(arr1, arr2, arr3)
返回:
[ 'a', 'd', 'c', 'b' ]
该代码也能够处理多层数组的解析。
注意
Native Javascript的concat操作并不改变原始数组,因此在上面提供的方案中,也不对原数组进行修改,而是返回新的数组。
在github上创建了gist,欢迎修改指正。https://gist.github.com/4167036
另外,最好加个去重处理,像上面的例子会处理重复元素。
concat
(这段是凑字数的,请忽略。)