//input:[{name:'liujinyu'},{name:'noah'}]
//output:['liujinyu','noah'] Array.prototype.choose = function(key){
var tempArr = [];
this.forEach(function(v){
tempArr.push(v[key])
});
return tempArr;
}
//并集
//[1,2,3].union([3,4]) output:[1,2,3,4]
Array.prototype.union = function(arr){
var tempArr = this.slice();
arr.forEach(function(v) {
!tempArr.includes(v) && tempArr.push(v)
});
return tempArr;
}

a = [1,2,3] ;  b = [3,4]

差集:

a.concat(b).filter(v => a.includes(v) ^ b.includes(v))  // [1,2,4]

并集:

var tempArr = a.slice() ;

b.forEach(v => {!tempArr.includes(v) && tempArr.push(v)})   //tempArr=[1,2,3,4]

交集:

a.filter(v => b.includes(v))

去重

方法一:

var tempArr = [] ;

arr.filter(v=>tempArr.includes(v)?false:tempArr.push(v))

方法二:

var arr = [1, 2, 2, 4, 4];
// 使用Set将重复的去掉,然后将set对象转变为数组
var mySet = new Set(arr); // mySet {1, 2, 4} // 方法1,使用Array.from转变为数组
// var arr = Array.from(mySet); // [1, 2, 4] // 方法2,使用spread操作符
var arr = [...mySet]; // [1, 2, 4] // 方法3, 传统forEach
var arr2 = [];
mySet.forEach(v => arr2.push(v));

多维转一维

var arr = [1,[2,[[3,4],5],6]];
function unid(arr){
var arr1 = (arr + '').split(',');//将数组转字符串后再以逗号分隔转为数组
var arr2 = arr1.map(function(x){
return Number(x);
});
return arr2;
}
console.log(unid(arr));

js 数组 : 差集、并集、交集、去重的更多相关文章

  1. js 数组 : 差集、并集、交集、去重、多维转一维

    //input:[{name:'liujinyu'},{name:'noah'}] //output:['liujinyu','noah'] Array.prototype.choose = func ...

  2. js取两个数组的交集|差集|并集|补集|去重示例代码

    http://www.jb51.net/article/40385.htm 代码如下: /** * each是一个集合迭代函数,它接受一个函数作为参数和一组可选的参数 * 这个迭代函数依次将集合的每一 ...

  3. 【python】集合 list差集|并集|交集

    两个list差集 list(set(b).difference(set(a))) # b中有而a中没有的 示例: a=[1,2,3] b=[2,3] list(set(a).difference(se ...

  4. 小姐姐手把手教你JS数组中的对象去重

    有时候数据库中的数据重复的,我们另一个需求需要数据的唯一性 那么这时候就用到这个方法了  我还是以截图的方式发粗来  不然太丑了 见谅 console.log(map)打印出来的结果已经帮我们把需要的 ...

  5. JS数组的交集、并集、差集,数组去重,获取两个数组重复的元素,去除两个数组相同的元素

    let arr1=[1,2,3,4,5,6] let arr2=[4,5,6,7,8,9] // 并集 数组去重 let RemoveSame=[...new Set([...arr1,...arr2 ...

  6. JS 对象 数组求并集,交集和差集

    一.JS数组求并集,交集和差集 需求场景 最近,自己项目中有一些数组操作,涉及到一些数学集的运算,趁着完成后总结一下. 简化问题之后,现有两数组a = [1, 2, 3],b = [2, 4, 5], ...

  7. 【转】 js数组 Array 交集 并集 差集 去重

    原文:http://blog.csdn.net/ma_jiang/article/details/52672762 最劲项目需要用到js数组去重和交集的一些运算,我的数组元素个数可能到达1000以上, ...

  8. JS数组操作:去重,交集,并集,差集

    原文:JS数组操作:去重,交集,并集,差集 1. 数组去重 方法一: function unique(arr) { //定义常量 res,值为一个Map对象实例 const res = new Map ...

  9. js数组并集,交集,差集

    js数组并集,交集,差集的计算方式汇总 一. new Set 方式实现 这种方式实现起来比较简单,原理就是参考new Set可以去重的功能 ,关于去重可以点击 https://www.haorooms ...

随机推荐

  1. properties 乱码问题

    File --> Others Settings --> Default Settings

  2. Redis-Cluster集群原理

    一.redis-cluster 官方推荐的 redis 集群解决方案,优点在于去中心化, 去中间件,也就是说,集群中的每个节点都是平等的关系,都是对等的,每个节点都保存各自的数据和整个集群的状态.每个 ...

  3. 工具-docker01

  4. 逆向学习XXclient怎样仅仅执行一个实例

    个人觉得学习分两种, 一种是当面请教和直接从书本网络中的资料学习. 其二就是看着令你惊叹的作品-顿悟. 什么?顿悟不了?那我们就一起来逆向学习吧!差点忘了,我并不打算提供Demo,这并不重要,难道你打 ...

  5. poj 2683 Ohgas' Fortune 利率计算

    水题. 代码: //poj 2683 //sep9 #include <iostream> using namespace std; int main() { int cases; sca ...

  6. win7-32虚拟机安装

    前置条件:安装好VMware-workstation 一.本人本机win7—32位 准备win7_32位镜像文件GSP1RMCULFRER_CN_DVD.iso 新建一个文件夹,将它保存在我们的新建文 ...

  7. NSAttributedString编程

    - (void)viewDidLoad {     [super viewDidLoad];          NSMutableAttributedString *attributedString ...

  8. ios 导航栏 点击barbutton的按钮 下拉列表

    环境:xocde5.0.2+ios7.0.1 1.导航栏 ----点击科目--------下拉列表 代码:NGRightTableViewViewController.h #import <UI ...

  9. 杂项:WCF

    ylbtech-杂项:WCF Windows Communication Foundation(WCF)是由微软开发的一系列支持数据通信的应用程序框架,可以翻译为Windows 通讯开发平台. 整合了 ...

  10. 13. Roman to Integer[E]罗马数字转整数

    题目 Given a roman numeral, convert it to an integer. Input is guaranteed to be within the range from ...