7. Set & Map集合数据类型

222 阅读1分钟

Set集合表示无重复值的有序列表

let set = new Set();
console.log(set);//Set(0) {}

//添加元素
set.add(2);
set.add('4');
set.add('4');
set.add([1, 2, 3])
console.log(set);//Set(3) {2, "4", Array(3)}

//删除元素
set.delete(2);
console.log(set);//Set(2) {"4", Array(3)}

//校验元素
console.log(set.has('4'));//true

//访问集合的长度
console.log(set.size);//2

//将set集合转换成数组
let set2 = new Set([1, 2, 3, 3, 3, 3, 4]);
let arr = [...set2];//通过扩展运算符操作
console.log(arr);//(4) [1, 2, 3, 4]

Map类型是键值成对的有序列表,键和值是任意类型

let map = new Map();

//设置键和值
map.set('name', 'Max');//前面是键 后面是值
map.set('age', '23');
console.log(map);//Map(2) {"name" => "Max", "age" => "23"}

//获取值
console.log(map.get('name'));//Max

//校验属性
console.log(map.has('name'));//true

//删除属性
map.delete('name');
console.log(map);//Map(1) {"age" => "23"}

//清除属性
map.clear();
console.log(map);//Map(0) {}

//键和值可以是任意类型
map.set(['a', [1, 2, 3]], 'hello');
console.log(map);//Map(1) {Array(2) => "hello"}