每日一记之ES6-Set和Map数据类型
一,set集合数据类型
集合:表示无重复值的有序列表
//这样就会创建一个空的集合
let set = new Set()
//下面举例一些set的方法
//添加元素
set.add(2);
//当添加两次同样的值时,他不会重复添加,大小也不会变大
set.add('4');
set.add('4')
set.add(['hh','b','c'])
//删除元素
set.delete(2)
//校验某个值是否在set集合中
console.log(set.has('4')) //打印的是true,表示有
//访问集合的长度
console.log(set.size)
//forEach,它访问的是集合里面的那个数组,但在这里你打印他的value和key,是相同的,平时不这样遍历
set.forEach((val,key)=>{
console.log(val);
console.log(key);
})
//将set转化成数组
let set2 = new Set([1,2,3,3,3,4]) //这里打印出来应是{1, 2, 3, 4}
//现在把这个集合通过扩展运算符转化成数组来操作
let arr = [...set2]
二,Map数据类型
map类型是键值对的有序列表,键和值是任意类型
let map = new Map();
map.set('name','yoyo')
map.set('age',20)
console.log(map);
//这里打印出来是{'name' => 'yoyo', 'age' => 20}
//通过get可以获取里面的value
console.log(map.get('name'));
里边会有key value
方法跟set差不多,可直接打印一下map在Prototype来看看有什么方法