集合 (Set) 和 映射 (Map) 都是 ES6 引入的两个非常有用的数据结构。下面是这两个数据结构的基本操作以及详细注释。
集合是一种无序且元素唯一的数据结构。
// 创建一个集合
let mySet = new Set();
// 添加元素到集合
mySet.add(1);
mySet.add(2);
mySet.add(2); // 重复的元素不会被添加
// 检查元素是否在集合中
console.log(mySet.has(1)); // 输出: true
console.log(mySet.has(3)); // 输出: false
// 删除元素
mySet.delete(1);
console.log(mySet.has(1)); // 输出: false
// 获取集合的大小
console.log(mySet.size); // 输出: 1
// 遍历集合
mySet.forEach(value => {
console.log(value);
});
// 清空集合
mySet.clear();
console.log(mySet.size); // 输出: 0
映射是一个键-值对的集合,其中键和值可以是任何数据类型。
// 创建一个映射
let myMap = new Map();
// 添加键-值对到映射
myMap.set('key1', 'value1');
myMap.set('key2', 'value2');
// 获取键对应的值
console.log(myMap.get('key1')); // 输出: value1
// 检查键是否在映射中
console.log(myMap.has('key1')); // 输出: true
console.log(myMap.has('key3')); // 输出: false
// 删除键-值对
myMap.delete('key1');
console.log(myMap.has('key1')); // 输出: false
// 获取映射的大小
console.log(myMap.size); // 输出: 1
// 遍历映射
myMap.forEach((value, key) => {
console.log(key, value);
});
// 清空映射
myMap.clear();
console.log(myMap.size); // 输出: 0