欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ES6使用Set数据结构实现数组的交集、并集、差集功能示例

程序员文章站 2022-06-24 13:38:07
本文实例讲述了es6使用set数据结构实现数组的交集、并集、差集功能。分享给大家供大家参考,具体如下: set数据结构是es6中新增的,它类似于数组,但是成员的值唯一,没...

本文实例讲述了es6使用set数据结构实现数组的交集、并集、差集功能。分享给大家供大家参考,具体如下:

set数据结构是es6中新增的,它类似于数组,但是成员的值唯一,没有重复值。

set本身是一个数据结构,用来生成set数据节后

set数据结构的实例有4种遍历方法:

keys():返回一个键名的遍历器
values():返回一个键值便利器
entries():返回一个键值对便利器
foreach():使用回调函数遍历每个成员

由于set数据结构没有键名,只有键值(或者说键名和键值是同一个值),所以keys和values方法的行为完全一致。

因此使用set可以容易的实现交集、并集、差集

看看实现代码:

let a=new set([1,2,3]);
let b=new set([4,3,2]);
//交集
let union= [...new set([...a,...b])];
console.log(union);
//并集
let intersect= [...new set([...a].filter(x=> b.has(x)))];
console.log(intersect);
//差集
let difference= [...new set([...a].filter(x=> !b.has(x)))];
console.log(difference);

更多相关内容可查看本站专题:《ecmascript6(es6)入门教程》、《javascript数组操作技巧总结》、《javascript字符与字符串操作技巧总结》、《javascript数据结构与算法技巧总结》、《javascript错误与调试技巧总结》及《javascript面向对象入门教程

希望本文所述对大家基于ecmascript的程序设计有所帮助。