set 和 map的区别

一、set(集合)

特点:类似于数组,成员的值都是唯一的,集合实现了 iterator 接口,可以使用扩展运算符… ,和 for…of 进行遍历

2、属性和方法:

st.size :返回集合的个数
st.add(item) : 往集合中添加一个新元素item,返回当前集合
st.delete(item) : 删除集合中的元素,返回boolean 值
st.has(item) : 检测集合中是否包含某个元素,返回boolean值
st.clear() : 清空集合
集合转为数组 : […st]
合并两个集合 :[…st1, …st2]
3、数组去重

let arr = [1,2,3,4,5,5,4,2,]
let res = [...new Set[...arr]]
console.log(res);   // 1,2,3,4,5

二、map
1、特点:Map 对象是键值对集合,和 JSON 对象类似,但是 key 不仅可以是字符串还可以是对象
2、属性和方法

  • size : 返回 Map 的元素(键值对)个数
  • set(k, v) : 增加一个键值对, 返回当前Map
  • get(k) : 返回键值对的键值
  • has() : 检测 Map 中是否包含某个元素
  • clear() : 清空结合,返回 undefined
var map = new Map();
var obj = { name: '小缘', age: 14 };
map.set(obj, '小缘喵');
map.get(obj); // 小缘喵
map.has(obj); // true
map.delete(obj) ;// true
map.has(obj); // false

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值