ES6 (ES2015)新增的集合对象Set

Set 是 **ES6 (ES2015)**新增的 JavaScript 内置集合数据结构,是 JS 原生的,不用引入任何插件就能用,现代浏览器都支持,无需考虑兼容性问题。Set的最核心优势是,一去重,二搜索快,是用来弥补传统数组的不足而引入的。

1、去重

const ids = [100, 101, 100, 102, 103, 103]

const idSet = new Set(ids)

这是idSet就只有100,101,102,103了。

2、搜素快

数组:ids.includes(102)

底层是遍历数组,数据量越大,查找越慢

集合:idSet.has(102)

底层是哈希算法,无论数据量多大,查找速度几乎不变,效率极高。

集合使用也非常方便:

1、增加

idSet.add(200)

2、删除

idSet.delete(100)

3、转回数组

const newIds = [...idSet]

使用Set的场景就是去重和加快搜索性能,有这两种场景的可以试试,非常好用。

相关推荐
坚定信念,勇往无前6 分钟前
electron-vite 安装better-sqlite3
javascript·数据库·electron
@菜菜_达14 分钟前
jquery.inputmask插件介绍
前端·javascript·jquery
QuZhengRong14 分钟前
【Luck-Report】缓存
java·前端·后端·vue·excel
jiayong2319 分钟前
前端面试题库 - 浏览器与网络篇
前端·网络·面试
Csvn23 分钟前
小程序开发:微信小程序与 uni-app 实战指南
前端
摸鱼小李上线了30 分钟前
vue项目页面添加水印实现方法
前端·javascript·vue.js
砍材农夫35 分钟前
物联网 基于netty构建mqtt协议规范(主题通配符订阅)
java·前端·javascript·物联网·netty
彩票管理中心秘书长39 分钟前
智能体状态指示:何时思考、何时调用工具、何时出错
前端·后端·程序员
彩票管理中心秘书长39 分钟前
React + TypeScript拆解一整套“AI 变现代码流程”
前端·后端·程序员
广州华水科技43 分钟前
单北斗GNSS变形监测在基础设施安全中的应用与维护
前端