javascript 数组求交集/差集/并集/过滤重复
最近在小一个小程序项目,突然发现 javscript 对数组支持不是很好,连这些基本的功能,都还要自己封装.网上查了下,再结合自己的想法,封装了一下,代码如下.
//数组交集 Array.prototype.intersect = function(){let mine = this.concat();for (var i = 0; i < arguments.length; i++) {mine.map(function (value, index) {if (!this.includes(value)) delete mine[index];}, arguments[i]);}return mine.filter(v => v); };//数组差集:返回在当前数组中,但不在其他数组中的元素 Array.prototype.minus = function(){let mine = this.concat();for (var i = 0; i < arguments.length; i++) {mine.map(function (value, index) {if (this.includes(value)) delete mine[index];}, arguments[i]);}return mine.filter(v => v); };//过滤数组重复元素 Array.prototype.unique = function(){let result = [];this.map(function (value, index) {if (!this.includes(value)) this.push(value);}, result);return result; };//数组并集 Array.prototype.union = function(){let result = this.concat();for (var i = 0; i < arguments.length; i++) {arguments[i].map(function (value, index) {if (!this.includes(value)) this.push(value);}, result);}return result; };[1, 2, 3, 2, 1].unique(); [1, 2, 3].intersect([1, 2, 8], [1, 2, 6], [1, 2, 3]); [1, 2, 3].minus(["aaaa", 2], [ "cccc", 1]); [1, 2, 3].union(["Robin", "aaaa", "bbbb"], ["aaaa", "cccc"]);
转载于:https://www.cnblogs.com/zbseoag/p/9952513.html
javascript 数组求交集/差集/并集/过滤重复相关推荐
- java8 stream流操作集合交集,差集,并集,过滤,分组,去重,排序,聚合等
测试对象 public class Person {private String name;private Integer age;private Integer weight;public Pers ...
- python中交集并集用什么符号表示_Python实现两个list求交集,并集,差集的方法示例...
本文实例讲述了Python实现两个list求交集,并集,差集的方法.分享给大家供大家参考,具体如下: 在python中,数组可以用list来表示.如果有两个数组,分别要求交集,并集与差集,怎么实现比较 ...
- Linux 两个文件求交集、并集、差集
Linux 两个文件求交集.并集.差集 原文地址: Linux 两个文件求交集.并集.差集 (https://www.cnblogs.com/molong1208/p/5358509.html) 一. ...
- 求两个数组的交集和并集
晚上闲来无事,想起前两天查资料时候,看到别人一篇博客标题关于数组的交集和并集,晚上也随便写写,权当督促自己坚持经常练习练习写写小Demo.如下,先来一段求有序数组的交集的代码,代码如下: public ...
- C/C++语言实现一百个数组之间求任意数组的交集和并集
1:背景要求 1.C++ 2.给定一百个数组,求任意两个集合之间的交集和并集(最好能按照学生的方式做,不被发现的那种)撰写设计书,主要内容包括(500-1000字): ①背景介绍或实验目的: ②功能设 ...
- LeetCode 2248、多个数组求交集
2248.多个数组求交集 1)题目描述 给你一个二维整数数组 nums ,其中 nums[i] 是由 不同 正整数组成的一个非空数组,按 升序排列 返回一个数组,数组中的每个元素在 nums 所有数组 ...
- C++二个数组求交集的实现算法(附完整源码)
C++二个数组求交集的实现算法 C++二个数组求交集的实现算法完整源码(实现,main函数测试) C++二个数组求交集的实现算法完整源码(实现,main函数测试) #include <iostr ...
- 腾讯实习笔试:关于几个有序数组求交集的问题
题目就是假设有三个有序数组对其求交集,要求算法空间复杂度必须小,有序数组量会比较大. 解法: 第一种就是用二分法查找,二分法查找的效率是log(n),两个数组求交集就是n1log(n2),当n1远小于 ...
- 【leetcode】2248. 多个数组求交集(js实现)
1. 题目 2248. 多个数组求交集 2. 思路 先找到一个参考集合set1 去遍历nums中的每一个数组,并遍历数组中的每一个元素,依次求两个集合的交集,并将得到的交集赋值给参考集合set1 最后 ...
最新文章
- 查看mysql主外键信息
- echarts树图控件分析
- oracle数据库swap占用率高,Oracle数据库所在服务器swap严重
- 混合列压缩(HCC)在OLAP及OLTP场景中的测试
- oracle怎么删除存储,删除Oracle分区存储是一个怎样的过程?
- 游戏编程精粹学习 - 使用定点颜色插值模拟实时光照
- Pwn2Own 2020 曝出的Linux 内核漏洞已修复
- 我的面试准备过程--队列与栈(更新中)
- 蓝桥杯-明码 bitset初识
- vivo手机进入9008模式(vivo x7测试)
- pythonppt生成替换_python生成ppt的方法
- 第二十五届全国青少年信息学奥林匹克联赛初赛
- FUZ 1759 Super A^B mod C (指数循环节/模板)
- 关于Kaggle入门,看这一篇就够了
- 团队管理的四大挑战——裁人篇
- SQL数据库msdb置疑(急)
- 自动化(四)appium真机远程控制和远程群控
- 关于Linux下通过ping/mtr 长期监控网络输出日志报告的一些笔记
- 【Docker篇】Docker镜像加载原理,UnionFS(联合文件系统),镜像Commit
- 网络工程师成长日记373-李宁公司项目
热门文章
- [P1580] yyy loves Easter_Egg I
- daterangepicker双日历插件的使用
- 想办法解决window刷新的问题
- ubuntu14.04不能安全卸载移动硬盘
- [转]使用C#开发ActiveX控件
- Oracle 关于事物的描述
- HDU 1874 最直接的最短路径问题
- VS2012无法安装cocos2d-x-2.1.4 解决方法及VS2012新建coco2d-x项目(一)
- 1. ThreadPoolExecutor的一个常用的构造方法
- MongoDB基础使用