js set和map详解
当我们需要存储唯一值的集合时,可以使用Set。Set是一种有序的、无重复值的集合,它可以存储任何类型的值,包括原始值和对象。下面是使用Set的示例:
Copy
// 创建一个Set
const mySet = new Set();
// 添加值
mySet.add(1);
mySet.add(2);
mySet.add(3);
// 删除值
mySet.delete(2);
// 判断值是否存在
console.log(mySet.has(1)); // true
console.log(mySet.has(2)); // false
// 获取集合大小
console.log(mySet.size); // 2
// 迭代集合
mySet.forEach((value) => {
console.log(value);
});
// 清空集合
mySet.clear();
Map则是一种键值对的集合,其中的键和值可以是任意类型。Map中的键是唯一的,值则可以重复。下面是使用Map的示例:
Copy
// 创建一个Map
const myMap = new Map();
// 添加键值对
myMap.set('name', 'John');
myMap.set('age', 30);
// 获取值
console.log(myMap.get('name')); // "John"
// 删除键值对
myMap.delete('age');
// 判断键是否存在
console.log(myMap.has('name')); // true
console.log(myMap.has('age')); // false
// 获取Map的大小
console.log(myMap.size); // 1
// 迭代Map
myMap.forEach((value, key) => {
console.log(`${key}: ${value}`);
});
// 清空Map
myMap.clear();
需要注意的是,Set和Map都是可迭代的,可以使用for...of循环遍历和获取值。另外,Set和Map也提供了其他一些有用的方法,比如keys()、values()和entries()来获取集合中的键、值和键值对等。
浙公网安备 33010602011771号