【JavaScript数据结构】集合与映射

75 阅读1分钟

集合 (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