js基础学习之Set

本文介绍了JavaScript中的Set数据结构,包括其基础概念、属性、方法和应用场景。Set是ES6新增的数据结构,用于存储唯一值,常用于数组去重。文章详细讲解了Set的构造函数、size属性以及add、clear、delete、has等方法,并给出了相关示例。此外,还探讨了Set在实际中的用途,如字符串字符唯一性检查。
摘要由CSDN通过智能技术生成

js基础学习之set

背景

需求: 数组去重
给定一个数组,删除所有的重复元素,使得每个元素只出现一次

const numbers = [2,3,4,4,2,3,3,4,4,5,5,6,6,7,5,32,3,4,5]
console.log([...new Set(numbers)])

1 set基础学习

1.1 Set简述

Set是ES6新增的一种新的数据结构,类似于数组,但是成员是唯一且无序的,没有重复的值

ps: 意味着set里面添加重复的值会自动过滤掉

  • 问题一: 那能不能提供一个数组,然后转换成Set,那Set中的成员是唯一的就完成去重了
  • 问题二: 数组和Set是否可以相互转换

1.2 Set属性以及相关方法

1.2.1 构造函数Set()

Set()构造函数,创建Set对象,可以存储任意类型的唯一值

  • 任意类型: 无论是基本类型或者是对象引用或者函数(具体分析见实例方法add)
  • 唯一值:成员值不重复(具体分析见下面)

语法分析

new Set()
new Set(iterable)
  • 只能通过new 构建,因为这是构造函数
  • 参数要么为空(或者null)表示新的Set为空; 要么为可迭代对象会将非重复元素添加到新的Set中
  • 返回一个Set对象

示例分析
1.创建空的Set对象

let mySet = new Set();
//或者传参null
let mySet = new Set(null);

2.创建只含有一个元素1的Set对象

//参数只能是可迭代对象或者null或者空;否则会报错
let mySet = new Set(1);
/*VM109:1 Uncaught TypeError: number 1 is not iterable (cannot read property Symbol(Symbol.iterator))
    at new Set (<anonymous>)
    at <anonymous>:1:13
*/

//想要创建只含有一个元素1的Set对象下面提供两种思路
//思路一:创建空的,然后往Set里面新增,Set里面提供实例方法Set.prototype.add()
let mySet = new Set();
mySet.add(
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值