博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一个JS多个数组取交集算法
阅读量:6237 次
发布时间:2019-06-22

本文共 567 字,大约阅读时间需要 1 分钟。

如题,多个数组中取交集(共同拥有元素),思路取第一个数组去跟每个数组中的元素对比,同时比较数据类型有救返回没有就返回null。

下面介绍到的算法数据格式是二维数组如:

const parentArray = [[11,12,343,34,432,34,4],[54,3,4,5,2,52],[34,2,3,23,423,234]]

算法明细:

var arr = arrs.shift();   for(var i=arrs.length;i--;){     var p = {"boolean":{}, "number":{}, "string":{}}, obj = [];     arr = arr.concat(arrs[i]).filter(function (x) {       var t = typeof x;       return !((t in p) ? !p[t][x] && (p[t][x] = 1) : obj.indexOf(x) < 0 && obj.push(x));     });     if(!arr.length) return null;   }  return arr;

 

转载于:https://www.cnblogs.com/leungUwah/p/9236590.html

你可能感兴趣的文章
软件开发:对于产品经理需要哪些日常工作吗
查看>>
Linux 下的 netfilter 认识与常规操作
查看>>
Udp广播的发送与接收(C#+UdpClient) 上篇
查看>>
dp和sp到底有什么区别
查看>>
Windows 8 应用开发 - 本地数据存储
查看>>
linux 运维进阶技能图
查看>>
sql查询重复的数据
查看>>
Linux第一节Centos系统的安装
查看>>
JS-严格模式、非严格模式
查看>>
使用lombok省略get、set代码
查看>>
IOC容器和注入方式
查看>>
poj2449
查看>>
用户忘记密码,找回用户密码与缓存之间的问题
查看>>
img显示从数据库取出blob字段
查看>>
[原] 在windows下配置Android自动build环境
查看>>
Python 的 encode 和 decode
查看>>
经典.net面试题目
查看>>
项目:BluetoothChat
查看>>
Binary Tree Postorder Traversal
查看>>
N个数字模K问题
查看>>