📅  最后修改于: 2023-12-03 15:38:17.575000             🧑  作者: Mango
哈希是一种常见的数据结构,它可以用来实现快速的数据查找和存储。在 JavaScript 中,我们可以使用内置的对象 Map 和 Set 来实现哈希。
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');
可以使用 forEach 方法遍历 Map 中的键值对:
map.forEach((value, key) => {
console.log(`${key}: ${value}`);
});
可以使用 has 方法判断 Map 中是否包含指定的键:
const hasKey = map.has('key3');
console.log(hasKey); // 输出 false
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');
可以使用 forEach 方法遍历 Set 中的值:
set.forEach((value) => {
console.log(value);
});
可以使用 has 方法判断 Set 中是否包含指定的值:
const hasValue = set.has('value3');
console.log(hasValue); // 输出 false
Map 和 Set 是 JavaScript 中常见的哈希实现方式,它们可以用于实现快速的数据查找和存储。在使用时,我们需要根据实际场景选择最适合的数据结构。