JS Set和Map详解
在JavaScript中,Set和Map是两种常用的数据结构,用来存储不重复的值和键值对。本文将详细介绍Set和Map的用法,以及它们的常见操作和方法。
Set
创建Set
创建一个Set可以通过以下方式:
let set = new Set();
添加元素
使用add
方法可以向Set中添加元素:
set.add(1);
set.add(2);
set.add('foo');
删除元素
使用delete
方法可以删除Set中的元素:
set.delete(2);
检查元素是否存在
可以使用has
方法检查Set中是否包含某个元素:
set.has(1); // true
获取Set的大小
可以使用size
属性获取Set的大小:
set.size; // 2
清空Set
使用clear
方法可以清空Set中的所有元素:
set.clear();
遍历Set
可以使用forEach
方法或者遍历器(for…of)来遍历Set中的元素:
set.forEach(function(value) {
console.log(value);
});
for (let item of set) {
console.log(item);
}
Map
创建Map
创建一个Map可以通过以下方式:
let map = new Map();
添加键值对
使用set
方法可以向Map中添加键值对:
map.set('name', 'Alice');
map.set('age', 30);
获取值
可以使用get
方法获取Map中指定键对应的值:
map.get('name'); // Alice
删除键值对
使用delete
方法可以删除Map中指定的键值对:
map.delete('age');
检查键是否存在
可以使用has
方法检查Map中是否包含某个键:
map.has('email'); // false
获取Map的大小
可以使用size
属性获取Map的大小:
map.size; // 1
清空Map
使用clear
方法可以清空Map中的所有键值对:
map.clear();
遍历Map
可以使用forEach
方法或者遍历器(for…of)来遍历Map中的键值对:
map.forEach(function(value, key) {
console.log(key + ': ' + value);
});
for (let [key, value] of map) {
console.log(key + ': ' + value);
}
通过上述介绍,我们可以看到Set和Map是非常实用的数据结构,能够帮助我们更方便地处理各种数据。在实际开发中,我们可以根据具体的需求选择合适的数据结构来存储和操作数据。