Set 是 JavaScript 中存储唯一值的内置对象,自动去重且对 NaN 和 +0/-0 有特殊处理;支持 add、has、delete 等操作,可与数组互转实现快速去重,遍历方式包括 for...of、forEach 及 keys/values/entries。

Set 是 JavaScript 中用于存储唯一值的内置对象,它自动确保所有元素互不重复,无论原始数据类型是基本类型还是引用类型(对引用类型按内存地址判断)。
Set 在添加值时会用严格相等(===)比较,但对 NaN 有特殊处理——它认为多个 NaN 是相等的,因此只保留一个;而 +0 和 -0 在 Set 中被视为相同值(符合 IEEE 754 规范)。
new Set([1, 1, 2, '2', '2']) → {1, 2, '2'}(数字 1 和字符串 '1' 不冲突)Set 提供简洁的 API 管理唯一值:
add(value):添加一个值,返回 Set 本身(可链式调用)has(value):检查是否包含某值,返回布尔值delete(value):删除指定值,返回是否删除成功clear():清空所有值size:获取当前元素个数(不是方法,是属性)利用 Set 的唯一性,可以一行代码去除数组重复项:
立即学习“Java免费学习笔记(深入)”;
[...new Set([1, 2, 2, 3])] 或 Array.from(new Set(arr))
Array.from(mySet) 或 [...mySet]
set[0]),需转为数组再操作Set 是可迭代对象,支持多种遍历语法:
for...of:按插入顺序遍历值(for (const v of mySet) { ... })forEach():类似数组,回调参数为 (value, value, set)(前两个参数相同)keys()、values()、entries():都可用,但 keys() 和 values() 行为一致(因为 Set 只有值,没有键)以上就是javascript的Set是什么_如何存储唯一值?的详细内容,更多请关注php中文网其它相关文章!
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号