Javascript数据结构set和map的用法总结

1. Set

ES6提供的新的数据结构类似数组,但成员的值唯一

创建set

//初始值为空
let set1 = new Set();
//利用数组初始化,重复的元素会自动去重
let arr = [1,2,2,3];
let set2 = new Set(arr);
let set3 = new Set([1,2,2,3]);
console.log([...set2]); //1,2,3

Set的属性和方法

  • .size: 返回Set成员的个数
  • add(value): 添加value值,返回set结构本身.
  • delete(value): 删除value值,返回布尔值,表示是否删除成功.
  • has(value): 判断是否存在value值,返回布尔值,表示是否存在.
  • clear(): 清空所有成员,无返回值

Set的遍历

  • keys(): 返回键名的遍历器
  • values(): 返回键值的遍历器(同keys)
  • entries(): 返回键值对的遍历器
  • forEach(): 遍历每个成员执行回调函数,无返回值

2. Map

map本质上是键值对的集合(hash结构)

创建Map

let map1 = new Map();
let map2 = new Map([['a',1],['b',2]]);
let map3 = new Map(map2);

Map的属性和方法

  • .size: 返回Map实例中成员的总数
  • set(key, value): 设置键名key对应的键值为value,若key不存在则生成新键,若存在则覆盖原先的值,该方法返回当前的Map对象
  • get(key): 读取key对应的键值,若不存在则返回undefined
  • has(key): 判断key是否存在,返回布尔值
  • delete(key): 删除key,删除成功返回true,删除失败返回false
  • clear(): 清楚所有成员,无返回值

Map遍历方法

  • keys(): 返回键名的遍历器
  • values(): 返回键值的遍历器
  • entries(): 返回键值对的遍历器
  • forEach(): 遍历每个成员,执行回调函数,无返回值
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值