技术文摘
JavaScript 集合 Set 操作的三类十种方法
2024-12-31 05:47:55 小编
JavaScript 集合 Set 操作的三类十种方法
在 JavaScript 中,Set 是一种特殊的数据结构,用于存储唯一的值。它提供了一系列强大的操作方法,本文将详细介绍其中的三类十种方法。
第一类:添加和删除元素
add()方法:用于向 Set 中添加一个元素。如果该元素已存在,则不会重复添加。
let mySet = new Set();
mySet.add(1);
mySet.add(2);
delete()方法:用于从 Set 中删除指定的元素。如果元素不存在,返回false;否则返回true。
mySet.delete(1);
clear()方法:用于清空 Set 中的所有元素。
mySet.clear();
第二类:检查元素是否存在
has()方法:用于检查 Set 中是否存在指定的元素。如果存在,返回true;否则返回false。
let hasElement = mySet.has(2);
第三类:集合运算
union()方法:返回一个新的 Set,包含两个或多个 Set 的并集。
let set1 = new Set([1, 2, 3]);
let set2 = new Set([3, 4, 5]);
let unionSet = new Set([...set1,...set2]);
intersection()方法:返回一个新的 Set,包含两个 Set 的交集。
let intersectionSet = new Set([...set1].filter(x => set2.has(x)));
difference()方法:返回一个新的 Set,包含第一个 Set 中有而第二个 Set 中没有的元素。
let differenceSet = new Set([...set1].filter(x =>!set2.has(x)));
isSubsetOf()方法:检查当前 Set 是否是另一个 Set 的子集。
let set3 = new Set([1, 2]);
let isSubset = set3.isSubsetOf(set1);
isSupersetOf()方法:检查当前 Set 是否是另一个 Set 的超集。
let isSuperset = set1.isSupersetOf(set3);
symmetricDifference()方法:返回一个新的 Set,包含只在其中一个 Set 中出现的元素。
let symmetricDifferenceSet = new Set([...set1,...set2].filter(x =>!(set1.has(x) && set2.has(x))));
熟练掌握这些 Set 操作方法,将有助于我们更高效地处理数据,避免重复和不必要的计算,提高 JavaScript 程序的性能和可读性。无论是在简单的应用场景还是复杂的项目中,Set 都能发挥重要的作用,为开发者提供便捷和灵活的数据处理方式。
- CSS 渐变边框仅显示左右侧的解决办法
- CSS 中背景色为 var() 时怎样设置透明度
- 使用CSS处理溢出文本并以...结尾的方法
- Vue3 + Element Plus的el-table组件实现带两级分类及部分单元格合并的复杂表格方法
- Vue3 + Element Plus 实现复杂 el-table 表格功能:横列动态渲染、二级分类与行列合并
- CSS 实现半圆形形状的方法
- 前端网页常见的六个问题,你知道吗
- Nuxt里的请求上下文
- 如何避免用户利用浏览器“隐藏元素”选项突破网页水印保护
- Swiper.js 实现鼠标滚轮滑动分页效果的具体步骤
- 功能类优先的 CSS 框架是什么
- 在 Vite 项目中如何从 Vue 3.2 升级到 Vue 3.4
- 怎样异步加载两个脚本文件并把控执行顺序
- link 标签与 @import 规则的差异在哪
- 为何样式刷新后才正常显示