Set.prototype.size 是只读属性,返回 Set 中不重复元素个数;重复添加不增加 size,删除后自动更新;空 Set 为 0;支持所有类型元素去重统计;不可加括号调用。

Set.prototype.size 是一个只读属性,直接返回 Set 实例中当前存储的不重复元素个数,不需要调用方法,也不接受参数。
直接访问 size 属性即可
创建 Set 后,随时可通过 .size 获取元素数量:
- 它反映的是实际插入的唯一值个数,重复添加同一值不会增加 size
- 删除元素后,size 会自动更新
- 空 Set 的 size 为 0
例如:
const s = new Set();console.log(s.size); // 0
s.add(1).add(2).add(1); // 添加重复值 1
console.log(s.size); // 2(不是 3)
s.delete(2);
console.log(s.size); // 1
size 不受原始数据类型影响
无论元素是数字、字符串、布尔值、对象引用,还是 Symbol,size 都准确统计去重后的数量:
console.log(s.size); // 6
// 因为 1 和 '1' 不同,{} 每次新建都不同,Symbol() 每次也不同
注意:size 不是函数,不能加括号
常见错误是写成 s.size(),这会报错 TypeError: s.size is not a function。正确写法只有 s.size —— 它是属性,不是方法。
与数组去重后长度对比
如果从数组构造 Set,其 size 等于去重后的元素个数:
const arr = [1, 2, 2, 3, 3, 4];const uniqueCount = new Set(arr).size;
console.log(uniqueCount); // 4
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











