Map和Set
Map是键值对,Set是值得集合,当然键和值可以是任何的值; 2.Map可以通过get⽅法获取值,⽽set不能因为它只有值; 3.都能通过迭代器进⾏for...of遍历; 4.Set的值是唯⼀的可以做数组去重,Map由于没有格式限制,可以做数据存储;
Map和Set是JavaScript中的两种数据结构:
Map是一种键值对的集合,其中每个键唯一且可以使用任何类型的值作为键。可以使用set()方法添加键值对,使用get()方法获取值,使用has()方法检查是否存在某个键等。
// 创建一个Map对象 let map = new Map(); // 使用set方法添加键值对 map.set('name', 'Alice'); map.set('age', 25); // 使用get方法获取键对应的值 console.log(map.get('name')); // 输出: Alice console.log(map.get('age')); // 输出: 25 // 使用has方法检查Map中是否存在某个键 console.log(map.has('name')); // 输出: true console.log(map.has('height')); // 输出: false // 获取Map的大小 console.log(map.size); // 输出: 2 // 遍历Map map.forEach(function(value, key) { console.log(key + ' : ' + value); }); // 删除键值对 map.delete('name'); // 删除键'name'及其对应的值 // 再次使用get方法,由于键'name'已经被删除,所以返回undefined console.log(map.get('name')); // 输出: undefined // 清空整个Map map.clear(); console.log(map.size); // 输出: 0
Set是一种值的无序集合,其中每个值唯一且可以使用任何类型的值作为成员。可以使用add()方法向Set添加值,使用delete()方法删除值,使用has()方法检查是否存在某个值等。
Map和Set都提供了高效的查询操作,因此在需要快速访问和查找元素的应用程序中非常有用。