探索 ES6 Set:用法与实战

news/2025/1/8 19:01:25/

在这里插入图片描述

🤍 前端开发工程师、技术日更博主、已过CET6
🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1
🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》
🍚 蓝桥云课签约作者、上架课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入门到实战全面掌握 uni-app》
💬 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。

ES6(ECMAScript 2015)引入了Set,这是一种新的数据结构,用于存储唯一的值,无论是原始值还是对象引用。Set的出现,为处理一组唯一值的需求提供了便利。本文将详细介绍Set的用法和实战技巧。

创建 Set

创建一个空的Set实例非常简单,只需使用new Set()构造函数:

let mySet = new Set();

你也可以在创建时就初始化一些值:

let mySet = new Set([1, 2, 3, 4, 5]);

Set 的基本操作

添加值

使用add方法可以向Set中添加新的值:

mySet.add(6);

检查值是否存在

使用has方法可以检查某个值是否存在于Set中:

console.log(mySet.has(3)); // 输出: true
console.log(mySet.has(7)); // 输出: false

删除值

使用delete方法可以删除指定的值:

mySet.delete(5);
console.log(mySet.has(5)); // 输出: false

获取 Set 的大小

使用size属性可以获取Set中的值的数量:

console.log(mySet.size); // 输出: 5

清空 Set

使用clear方法可以清空Set中的所有值:

mySet.clear();
console.log(mySet.size); // 输出: 0

遍历 Set

Set实例是可迭代的,因此可以使用for...of循环或者forEach方法来遍历它。

使用 for…of 循环

for...of循环可以遍历Set中的值:

for (let value of mySet) {console.log(value);
}

使用 forEach 方法

forEach方法也可以遍历Set中的值:

mySet.forEach((value) => {console.log(value);
});

Set 的实际应用

Set在许多实际应用场景中都非常有用。例如,它可以用于去除数组中的重复元素,或者存储用户在网页上点击的按钮。

let numbers = [1, 2, 2, 3, 4, 4, 5];
let uniqueNumbers = new Set(numbers);
let resultArray = [...uniqueNumbers];
console.log(resultArray); // 输出: [1, 2, 3, 4, 5]

在这个例子中,我们使用Set来去除数组中的重复元素,然后将结果转换回数组。

总结

Set是ES6中引入的一个非常有用的数据结构,它提供了存储唯一值的能力,并支持高效的遍历操作。通过使用Set,我们可以更方便地处理各种需要唯一值集合的场景。希望本文对你有所帮助,让你更好地理解和使用Set


http://www.ppmy.cn/news/1561346.html

相关文章

机器视觉——相机光源选择

工业相机光源选型 包括背光光源、同轴光源、条光光源、点光源、环形光源、面光源、激光光源、 UV光源、 红外光源 1. 背光光源 将背光源放置在检测物体下方,向镜头方向打光,物体部分由于不透光在镜头中呈现暗色阴影,边缘的缺陷会非常清晰。…

基于深度学习的视觉检测小项目(六) 项目的信号和变量的规划

• 关于前后端分离 当前流行的一种常见的前后端分离模式是vueflask,vueflask模式的前端和后端之间进行数据的传递通常是借助 API(应用程序编程接口)来完成的。vue通过调用后端提供的 API 来获取或提交数据。例如,前端可能通过发送…

黑马Java面试教程_P10_设计模式

系列博客目录 文章目录 系列博客目录前言1. 工厂方法模式1.1 概述1.2 简单工厂模式1.2.1 结构1.2.2 实现1.2.3 优缺点 1.3 工厂方法模式1.3.1 概念1.3.2 结构1.3.3 实现1.3.4 优缺点 1.4 抽象工厂模式1.4.1 概念1.4.2 结构1.4.3 实现1.4.4 优缺点1.4.5 使用场景 总结&#xff0…

VScode使用密钥进行ssh连接服务器方法

如何正常连接ssh的方式可以看我原来那篇文章:Windows上使用VSCode连接远程服务器ssh 1.连接 点击ssh加号,然后关键点在第2步的书写上 2.命令 2的位置写命令: ssh -i "C:\Users\userName\.ssh\id_rsa" usernameIP -p 端口号 端…

学习threejs,导入AWD格式的模型

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:threejs gis工程师 文章目录 一、🍀前言1.1 ☘️THREE.AWDLoader AWD模型加…

使用 httputils + chronicle-bytes 实现金融级 java rpc

1、认识 chronicle-bytes Chronicle-Bytes 是一个类似于 Java NIO 的 ByteBuffer 的高效字节操作库,但它提供了许多扩展功能。这个项目由 OpenHFT 开发并维护,旨在提供高性能、低延迟的数据处理解决方案。Chronicle-Bytes 设计用于高频率交易和其他对性…

使用systemd管理MySQL服务器

如果您在以下Linux平台上使用RPM或Debian软件包安装MySQL,则服务器启动和关闭由systemd管理: 1、RPM 包平台 企业Linux版本7及更高版本 SUSELinuxEnterprise Server 12及更高版本 Fedora 29及更高版本 2、Debian家族平台 Debian平台 Ubuntu平台 如果…

AWS EMR基础知识

EMR Overview 知识点:EMR是可简化大数据框架运行的托管集群平台,能以可扩展且具成本效益的方式处理和分析大量数据,应用于大数据分析、数据处理、机器学习、数据湖和数据仓库等场景。注意事项:根据业务需求选择合适的使用场景&am…