您好,匿名用户
随意问技术百科期待您的加入

jquery如何将两个数组合并

0 投票

两组数据,比如 [1, 2, 3, 4, 5],另一组是 [2, 4, 6, 7, 8]
如何合并成为 [1, 2, 3, 4, 5, 6, 7, 8],重复的只显示一个
有相关的函数方法么?

用户头像 提问 2012年 12月1日 @ Apollo 上等兵 (269 威望)
分享到:

1个回答

0 投票
 
最佳答案

在 jQuery 里,

合并成为 [1, 2, 3, 4, 5, 6, 7, 8],重复的只显示一个

我想到的办法是分成两步:

  1. 合并成为 [1, 2, 3, 4, 5, 2, 4, 6, 7, 8]
  2. 去重

代码如下:

var a =  [1, 2, 3, 4, 5];
var b =  [2, 4, 6, 7, 8];
$.merge(a,b);
console.log($.unique(a));

$.merge() 操作形成一个数组,其中包含两个数组的所有元素。
$.unique() 函数通过搜索的数组对象,排序数组,并移除任何重复的节点。

参见 jQuery 手册:

PS:关于 concat 与 $.merge

@engin123456789 答案中用 concat 来合并数组,关于两者的区别在 api.jquery.com 评论区有所提到:

q: What are the benefits to using this over the regular concat() method in JavaScript?
a: None, if both arguments are true arrays.
However, it also supports merging objects as arrays since 1.4.
Before 1.4, it contained fixes for specific browsers and removed comment nodes.

所以我也赞一下他。

用户头像 回复 2012年 12月1日 @ Vladimir 上等兵 (275 威望)
选中 2012年 12月1日 @Apollo
提一个问题:

相关问题

0 投票
1 回复 35 阅读
0 投票
1 回复 14 阅读
0 投票
1 回复 45 阅读
0 投票
1 回复 49 阅读
用户头像 提问 2012年 12月1日 @ Galio 上等兵 (289 威望)
0 投票
1 回复 65 阅读
用户头像 提问 2012年 12月1日 @ LeBlanc 上等兵 (289 威望)

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...