set集合

set集合

用于存放不重复的数据

创建set集合

new Set();//创建一个没有任何内容的set集合

new Set(iterable);//创建一个有内容的set集合,来自于可迭代对象每一次迭代的结果

如何后续操作

  • add(数据):添加一个数据到set末尾,如果已存在,则不操作
  • has(数据):判断set中是否存在对应的数据,set使用Object.is的方式判断两个数据是否相同,但是对于+0和-0,认为相等
  • delete(数据):删除匹配的数据,返回是否删除成功
  • clear():清空set集合
  • size():获取set集合中的元素数量,只读

如何遍历

  1. 使用for of循环
  2. 使用set中的方法forEach,set中不存在下标,所以回调函数中的第一个和第二个参数都表示set中的每一项

例子

1.创建set集合

const s1 = new Set();
console.log(s1);
const s2 = new Set('abcdefg');

在这里插入图片描述
2.后续操作

const s1 = new Set();
s1.add(1);
s1.add(2);
s1.add(3);
s1.add(4);
s1.add(5);
s1.add(6);
s1.add(1);//无效
s1.add(+0);
s1.add(-0);//无效
for(const item of s1){
    console.log(item);
}
s1.forEach((item, index, s)=>{
console.log(item, index, s); //item index都代表某项 s代表自身
})
console.log(s1);
console.log('总数为:', s1.size);
console.log(s1.has(1));
console.log(s1.delete(2));

在这里插入图片描述
3.数组去重

const arr = [1,1,2,2,3,3,4,4,5,5,6,6,7,7];
const result = [...new Set(arr)];   //数组去重 返回新数组
console.log(result);

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值