前端 js中 set, map区别

Set 对象类似于数组,且成员的值都是唯一的。

const arr = [1, 2, 3, 4, 5, 5, 4, 3, 2, 1];
const set = new Set();
arr.forEach(item => set.add(item));
console.log(set);  // 1, 2, 3, 4, 5
// 数组快速去重
console.log([...new Set(arr)]);  //[1, 2, 3, 4, 5]

Map 对象是键值对集合,和 JSON 对象类似,但是 key 不仅可以是字符串还可以是对象

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

版权声明:本文为m0_67402125原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。