📜  如何在 javascript 中使用哈希(1)

📅  最后修改于: 2023-12-03 15:38:17.575000             🧑  作者: Mango

如何在 JavaScript 中使用哈希

哈希是一种常见的数据结构,它可以用来实现快速的数据查找和存储。在 JavaScript 中,我们可以使用内置的对象 Map 和 Set 来实现哈希。

Map

Map 对象是一组键值对的集合,其中键和值都可以是任意类型的。使用 Map 可以实现快速的数据查找和存储。

创建和初始化 Map

可以使用构造函数创建一个新的 Map 对象:

const map = new Map();

也可以在创建 Map 对象的同时初始化键值对:

const map = new Map([
  ['key1', 'value1'],
  ['key2', 'value2'],
]);
添加和获取键值对

可以使用 set 方法添加键值对:

map.set('key3', 'value3');

可以使用 get 方法获取键对应的值:

const value = map.get('key3');
console.log(value); // 输出 'value3'
删除键值对

可以使用 delete 方法删除键值对:

map.delete('key3');
遍历 Map

可以使用 forEach 方法遍历 Map 中的键值对:

map.forEach((value, key) => {
  console.log(`${key}: ${value}`);
});
判断是否包含指定键

可以使用 has 方法判断 Map 中是否包含指定的键:

const hasKey = map.has('key3');
console.log(hasKey); // 输出 false
Set

Set 对象是一组唯一的值的集合,其中值可以是任意类型的。使用 Set 可以轻松地去重。

创建和初始化 Set

可以使用构造函数创建一个新的 Set 对象:

const set = new Set();

也可以在创建 Set 对象的同时初始化值:

const set = new Set(['value1', 'value2']);
添加和获取值

可以使用 add 方法添加值:

set.add('value3');

可以使用 values 方法获取 Set 中所有的值:

const values = set.values();
console.log(values); // 输出 SetIterator { 'value1', 'value2', 'value3' }
删除值

可以使用 delete 方法删除值:

set.delete('value3');
遍历 Set

可以使用 forEach 方法遍历 Set 中的值:

set.forEach((value) => {
  console.log(value);
});
判断是否包含指定值

可以使用 has 方法判断 Set 中是否包含指定的值:

const hasValue = set.has('value3');
console.log(hasValue); // 输出 false
总结

Map 和 Set 是 JavaScript 中常见的哈希实现方式,它们可以用于实现快速的数据查找和存储。在使用时,我们需要根据实际场景选择最适合的数据结构。