ES6数组:两个数组或数组对象取并集、交集、差集记录贴

WPS JS宏编程教程(从基础到进阶)-- 第六部分:JS集合与映射在 WPS 的应用 本章主要介绍如何在 WPS 中利用 JavaScript 的集合(Set)和映射(Map)对象来处理 Excel 数据。通过这一章,你将学会如何利用集合的唯一性、迭代以及集合和数组之间的互相转换操作,以实现数据去重、并集、交集、差集等常见需求。同时还将介绍映射操作、分组求和和记录拆分等技巧。 由于 WPS JS 宏编程的环境与标准 JavaScript 基本一致,本章中提供的案例既讲解了语法细节,也结合实际业务场景(如提取唯一值、生成不重复随机数、组卷等),帮助开发者编写出高效、易读的代码。 阅读详情
AI摘要

本文深入探讨了使用JavaScript进行集合运算的方法,包括数组的并集、交集和差集操作,同时提供了具体代码示例,帮助读者理解如何在实际编程中应用这些概念。

数组

  1. 取并集
let a=new Set([1,2,3,4,5]);
let b=new Set([1,2,3,4,5,6,7,8,9]);
let arr = Array.from(new Set([...a, ...b]));
console.log('arr',arr);

结果
在这里插入图片描述

  1. 取交集
let a=new Set([1,2,3,4,5]);
let b=new Set([1,2,3,4,5,6,7,8,9]);
let arr = Array.from(new Set([...b].filter(x => a.has(x))));

结果
在这里插入图片描述

  1. 取差集
let a=new Set([1,2,3,4,5]);
let b=new Set([1,2,3,4,5,6,7,8,9]);
let arr = Array.from(new Set([...b].filter(x => !a.has(x))));
console.log('arr',arr);

结果
在这里插入图片描述

数组对象

  1. 取交集
let a=[{id:1,a:123,b:1234},{id:2,a:123,b:1234}];
let b=[{id:1,a:123,b:1234},{id:2,a:123,b:1234},{id:3,a:123,b:1234},{id:4,a:123,b:1234}];
let arr = [...b].filter(x => [...a].some(y => y.id === x.id));
console.log('arr',arr)

结果
在这里插入图片描述

  1. 取差集
let a=[{id:1,a:123,b:1234},{id:2,a:123,b:1234}];
let b=[{id:1,a:123,b:1234},{id:2,a:123,b:1234},{id:3,a:123,b:1234},{id:4,a:123,b:1234}];
let arr = [...b].filter(x => [...a].every(y => y.id !== x.id));
console.log('arr',arr);

结果:
在这里插入图片描述

Allegro输出光绘文件规范 添加钻孔表的具体步骤为:1.通过屏幕右边的Visibility选项的Views列表,将Drill层打开2.将Visibility选项中的PIN和Via选项都选中,见下图所示: 参数设好之后关闭NC Drill/Parameters窗口,输出数控机床钻孔文件的命令菜单为:Manufacture=>NC=>NC Drill…,打开的窗口如下: 输出数控机床钻孔文件的具体步骤为: 上图是光绘输出的层控制窗口,还有一个窗口是输出参数的控制窗口,我们通过点击上图的第二个列表项General Parameters来 阅读详情

相关推荐

PayPal支付集成完全指南:开源库实践

本文介绍了如何从零开始集成PayPal支付功能。首先概述了PayPal提供的多语言SDK和开源库,包括PHP、Python、Node.js等版本。然后详细说明了准备工作,包括注册开发者账号、获取API凭证和使用沙盒环境测试。文章以Node.js为例,演示了安装SDK、基础配置和实现支付流程的完整代码,包括创建订单和捕获支付两个核心功能。最后提及了订阅支付等高级功能,为开发者提供了完整的支付集成方案。通过清晰的代码示例和步骤说明,帮助开发者快速实现PayPal支付功能集成。

2501_93501927的博客 1260

vue,js获取两个数组交集,并集,补集,差集

3.对于字符串类的数组,如:arr1 = [{id:‘1’,name:‘红’},{{id:‘2’,name:‘蓝’}]2.或使用filter方法和includes组合使用得到并集,交集,差集。4.对于字符串类的数组,这里的案例是在el-select中使用反选。1.对于简单的数字/字符串类的数组。

zhaowenxue的博客 5286

螺丝锁付系统软件设计 C# Winform

视觉螺丝锁付系统软件设计 C# Winform ,这是其中通信子模块设计

weixin_42522973的博客 340

js取两个数组对象的并集

1、通过id,把cArr放入aArr,取并集 var aArr = [ {id:'sa8523', name:'uzi',color:'blue'}, {id:'ys4621', name:'pdd',color:'white', age:12}, {id:'ys4621', name:'pdd'...

nnaay_的博客 3135

避坑指南:ros2_control在Gazebo中的常见配置错误及解决方案

本文系统梳理了在Gazebo仿真环境中配置ros2_control框架时最常见的错误,并提供了详细的解决方案。重点解析了YAML配置文件的结构陷阱、URDF/XACRO中关键标签的正确写法、Launch文件的启动顺序管理,并分享了实用的调试命令与故障排查思路,帮助开发者高效避坑,实现流畅的关节运动控制。

q5r6s7的博客 973

独立游戏开发者必看:STEAM税务信息更新全流程(附中国区避坑指南)

本文为独立游戏开发者详细解析了Steam税务信息更新的全流程,重点针对中国区开发者提供了避坑指南。文章深入解释了W-8BEN表格的填写要点,并指导如何准备个人所得税纳税记录和身份证等核心证明文件,以确保顺利通过审核,避免收入被预扣税款。

tcp8optimizer的博客 1314

两个数组对象取并集

两个数组对象去并集 arr1中的每一项都是对象,arr2中的每一项也都是对象 const a = [ {_id: 1}, {_id: 2}, {_id: 3}, ]; const b = [ {_id: 2}, {_id: 4}, ] 解决方法一: const c = a.filter(x => !b.find(y => y._id === x....

weixin_30369041的博客 791

Abaqus边界条件设置避坑指南:为什么你的实体单元转动自由度总是不生效?

本文深入解析了Abaqus中实体单元转动自由度设置失效的根本原因。从力学原理与有限元节点自由度的本质区别出发,阐明了实体单元仅具有平动自由度,直接约束其转动自由度是无效操作。文章提供了对称边界条件的正确设置方法,并给出了使用耦合约束等高级方案来模拟真实抗转动约束的实战指南,帮助用户避免常见建模陷阱。

weixin_29290379的博客 621

简单数组及对象数组取交集,差集,并集,补集的方法

1.简单数组 (1)方法一 const a = [1, 2, 3, 4, 5]; const b = [2, 4, 6, 8, 10]; // 交集 let intersect = a.filter(item => b.includes(item)); // 差集 let minus = a.filter(item => !b.includes(item)); // 并集 let union = [...new Set(a.concat(b))]; // 补集 let complement =

weixin_42232325的博客 1731

树上柑橘检测实战:自制数据集与YOLO训练全流程复盘

目标检测模型的性能上限往往由训练数据决定,尤其在农业视觉这样的复杂场景中,公开数据集与真实环境的差异常导致模型漏检、误检频发。高质量的标注数据是模型泛化的基础,从采集、清洗到统一标注规范,每一步都直接影响最终效果。对于检测任务而言,VOC与YOLO两种主流标注格式的转换是工程落地的常见环节,理解坐标归一化原理并做好校验,能有效避免训练事故。在模型训练阶段,合理划分数据集、谨慎选择数据增强策略,并结合切片推理解决小目标漏检,是果园场景下提升精度的关键。这套基于2511张果树图像的单类别检测流程,不仅支撑了柑橘

weixin_29057163的博客 231

向华为学习——解读华为战略规划SP与业务计划BP流程【附全文阅读】

该方案针对大中型企业高管及战略团队,系统拆解华为SP(4-9月中长期规划)与BP(10-12月年度执行)双轨体系,形成"战略制定-业务设计-资源配置-绩效解码"闭环。SP侧重市场趋势分析、业务优先级与资源分配,BP细化KPI、预算及行动计划。通过价值树、战略解码等工具实现战略到部门/个人的目标分解,强化跨部门协同与过程管控。配套17份华为实战资料(包括战略管理、流程优化、销售组织建设等核心方法论),助力企业建立规范的战略执行体系,实现资源优化与绩效落地。

cdfunlove的博客 772

js 获取两个数组的交集,并集,补集,差集(转载+收藏)

发现一个挺好用的js 获取两个数组的交集,并集,补集,差集的文章,收藏起来方便以后查阅 一、简单数组 1、ES5: const arr1 = [1,2,3,4,5], arr2 = [5,6,7,8,9]; // 交集 let intersection = arr1.filter(function (val) { return arr2.indexOf(val) > -1 }) // 并集 let union = arr1.concat(arr2.filter(function (.

梓隽的博客 2584

js数组求并集,交集,差集

前言 前几天面试的时候,有一道笔试题是用js求数组的交集,差集和并集,因为之前没有听过这个概念,就空着了,所以今天是想要专门写篇文章来记录一下。 现有两数组a = [1, 2, 3],b = [2, 4, 5],求a,b数组的并集,交集和差集。 基本概念 集合的分类: 并集:以属于A或属于B的元素为元素的集合成为A与B的并(集) 记作A∪B(或B∪A),读作“A并B”(或“B并A”),即A∪B={x|x∈A,或x∈B} 交集:以属于A且属于B的元素为元素的集合成为A与B的交(集) 记作A∩B(或B∩A)

weixin_45720111的博客 999

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

ES6过滤两数组取差集以及some和every的使用

两个例子: JSON数组 var list1 = [{name: 'a', id: '123'},{name: 'b', id: '1234'},{name: 'c', id: '12345'}] var list2 = [{name: 'a', id: '123'}] 首先我先使用ES6来处理 var arr = [...list1].filter(res=>{ return [...list2].every(t=>{ return...

lixu_boke的博客 1934

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

数组并,交,差集Set的妙用

1,并集 let a=new Set([1,2,3,4,5]); let b=new Set([1,2,3,4,5,6,7,8,9]); let arr = Array.from(new Set([...a, ...b])); console.log('arr',arr); 2.交集 let a=new Set([1,2,3,4,5]); let b=new Set([1,2,3,4,5,6,7,8,9]); let arr = Array.from(new Set([...b].filter(

huhaikang的博客 595

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

两个List集合做数据对比

随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。比如集合A和集合B,A和B的差集就是A集合中有的而B集合没有的,也就是灰色的部分。集合A和B共有的数据,也就是图中灰色部分A和B的数据合并在一起的值,也就是灰色范围的值。

技术分享博客 6299

【es6】教程 数据结构set和Map

【es6】教程 数据结构set和Map

weixin_44899940的博客 431

两数组比较,筛选出不同元素(附数组去重)

群里闲聊,聊到了这个问题,有大佬回答,特此记录学习; 先说一下问题: 两种方式:一种是使用ES6的写法,逼格高大上: let a=[1,2,3,4], b=[1,2,3,5,4,6], c = [...a, ...b], d = new Set(c), e = Array.from(d), f = [...e.filter(_=>!a.inc...

weixin_30670965的博客 2146

ES6-寒假学习计划之ES6篇

学习计划 ES6 Node.js VUE.JS Uni-App 学习日志 2020/12/27 es6 Promise(P27-P29) const P = new Promise((resolve,reject)=>{ settimeout(()=>{ resolve('用户数据');//成功 //reject('程序出错');//错误 },1000); }); //调用then()方法 //then()包含两个方法参数{1.当成功(resolv

kjkjkl的博客 407

php 三维数组实验报告,php三维数组去重(示例代码)

php三维数组去重的示例代码。假设叫数组 $my_array;//新建一个空的数组.$tmp_array=array();$new_array=array();//1.循环出所有的行.($val就是某个行)foreach($my_arrayas$k=>$val){$hash=md5(json_encode($val));if(in_array($hash,...

weixin_33586594的博客 328

js-ES6学习笔记-Set和Map数据结构

1、ES6 提供了新的数据结构Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。 Set 本身是一个构造函数,用来生成 Set 数据结构。 2、Set 函数可以接受一个数组(或类似数组的对象)作为参数,用来初始化。 3、Set.prototype.size:返回Set实例的成员总数。 四个操作方法。 add(value):添加某个值,返回Set结构本身。 delete(...

weixin_30266885的博客 120

ES6学习记录

1.let 和 const / set / int 和 string转化 1.1let 和const 1)声明的变量仅在块级作用域内有效 2)无变量提升,要在声明后使用 3)暂时性死区,只要块级作用域内存在let命令,它所声明的变量就绑定这个区域,不再受外部的影响 4)不允许在相同作用域内重复声明同一变量 1.2 const 1)同let 2)对于复合类型的变量,变量名不指向数据,而是指向数据所在的地址 const a = []; a.push('Hello'); // 可执行 a.length =

m0_37876472的博客 313

es-toolkit 的 xorBy:基于映射函数的两数组对称差集详解

本指南围绕 es-toolkit 数组工具库中的 `xorBy` 函数展开,讲解它如何在"先通过映射函数变换、再比较"的语义下计算两个数组的对称差集(symmetric difference),并结合 [src/array/xorBy.ts](https://link.gitcode.com/i/f6cd920d83209660fb8014ade5b0d8b9) 的源码实现与 [src/array

gitblog_00316的博客 4

C++ 实现集合(Set)的完整操作:从原理到实战

本文通过 C++ 面向对象思想实现了集合的核心操作,从类的设计、方法实现到交互式演示,完整覆盖了集合的基础功能。该实现不仅帮助理解集合的数学特性,也巩固了 C++ 类、对象、循环、条件判断等基础语法。通过扩展优化,可将其改造为更通用、高效的集合工具类,满足实际开发需求。

j050321的博客 736
上一篇: 小程序销毁中间页面(三级跳转设置)
下一篇: VUE问题反思:简单的避免订单重复提交
AlexKain
博客等级 码龄8年 35粉丝 105原创
评论 9
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值