Set和Map数据结构

本文详细介绍了ES6中的两种数据结构——Set和Map。Set是一种成员唯一的类似数组的数据结构,提供了添加、删除成员的方法以及遍历操作。它可以用于数组去重和计算并集、交集、差集。Map则是键值对的集合,键可以是任意类型,它提供了丰富的操作方法,如设置和获取键值,以及多种遍历方式。Map的遍历顺序与插入顺序一致,并可以与其他数据结构如数组、对象进行转换。
摘要由CSDN通过智能技术生成

Set

定义:ES6定义的一种新的数据结构。Set是一个构造函数,用于生成set实例。
特点: 类似于数组,成员唯一

const s = new Set();
[1,2,3,4,5,6,6,].forEach( x => s.add(x));
for(let item of s){
    console.log(item)
}
//1 2 3 4 5 6

Set实例的属性和方法

1.属性

  • Set,prototype.constructor:构造函数,默认就是Set函数
  • Set.prototyp.size:返回Set实例的成员总数

2.方法

  • add(values):添加某个值,返回Set结构本身
    向Set加入值不会发生类型转换,值比较类似于“===”,但是区别是认为NaN与自身相等

    let set = new Set();
    let a  = NaN;
    let b  =NaN;
    set.add(a).add(b);//返回set本身则可以链式调用
    set;//Set {NaN}
  • delete(values):删除某个值,返回布尔值表示是否删除成功

  • has(values):是否为Set的成员,返回布尔值
  • clear():清空所有成员,没有返回值

    3.遍历操作

  • keys():返回键名的遍历器
  • values():返回值的遍历器(默认的遍历器生成函数
    Set.prototype[Symbol.iterator] === Set.prototype.values //true
  • entries():返回键值对的遍历器
  • forEach():使用回调函数遍历每个成员
let set = new Set([1,2,3]);
set.forEach((<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值