为了账号安全,请及时绑定邮箱和手机立即绑定

JS怎么取出两个数组的不同值并合成一个新数组

JS怎么取出两个数组的不同值并合成一个新数组

心有法竹 2018-12-17 09:53:29
例如var array1 = [ 5,9,8,10,55];var array2 = [ 5,50,10]; 得到var arr3=[9,8,55,50]
查看完整描述

1 回答

?
肥皂起泡泡

TA贡献1829条经验 获得超6个赞

思路如下:

1,取两个数组的差集

var difference = arr1.filter(function(v){ return !(arr2.indexOf(v) > -1) }).concat(arr2.filter(function(v){ return !(arr1.indexOf(v) > -1)}));

2,先合并,再去重

var union = arr1.concat(arr2);// 去重的方法实在是太多了~function removeRepeatByFilter(array) {  return array.filter(function (item, index) {    // console.log(array.indexOf(item), index);
    return array.indexOf(item) === index;
  });
}

removeRepeatByFilter(union);


查看完整回答
反对 回复 2018-12-17
  • 1 回答
  • 0 关注
  • 1639 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号