Set
的用法及方法
- 用法:
Set
是一种集合数据结构,它允许你存储任何类型的唯一值,无论是基本数据类型还是对象引用。Set
中的元素是无序的,这意味着元素的顺序是不固定的,并且不能通过索引来访问元素。 - 具体方法
add(value)
:向Set
中添加一个新元素。如果元素已经存在,则不会再次添加。例如:
const mySet = new Set();
mySet.add(1);
mySet.add(2);
mySet.add(2); // 不会重复添加
console.log(mySet); // Set {1, 2}
delete(value)
:从Set
中删除指定元素。如果元素存在,则删除成功并返回true
;否则返回false
。
mySet.delete(1);
console.log(mySet); // Set {2}
has(value)
:检查Set
中是否包含指定元素。如果包含则返回true
,否则返回false
。
console.log(mySet.has(2)); // true
console.log(mySet.has(3)); // false
clear()
:移除Set
中的所有元素,将其清空。
javascript
mySet.clear();
console.log(mySet); // Set {}
Map
的用法及方法
- 用法:
Map
是一种键值对的数据结构,它可以将任何类型的值(包括对象)作为键和值。与普通对象类似,但Map
更灵活,它允许使用任何类型的值作为键,而不仅仅是字符串,并且它保留了键值对的插入顺序。 - 具体方法
set(key, value)
:向Map
中添加一个新的键值对。如果键已经存在,则更新其对应的值。例如:
javascript
const myMap = new Map();
myMap.set('name', 'John');
myMap.set('age', 30);
console.log(myMap); // Map { 'name' => 'John', 'age' => 30 }
get(key)
:根据键获取对应的值。如果键不存在,则返回undefined
。
console.log(myMap.get('name')); // John
console.log(myMap.get('city')); // undefined
has(key)
:检查Map
中是否存在指定的键。如果存在则返回true
,否则返回false
。
javascript
console.log(myMap.has('age')); // true
console.log(myMap.has('phone')); // false
delete(key)
:从Map
中删除指定键及其对应的值。如果键存在并成功删除,则返回true
;否则返回false
。
javascript
myMap.delete('age');
console.log(myMap); // Map { 'name' => 'John' }
clear()
:移除Map
中的所有键值对,将其清空。
myMap.clear();
console.log(myMap); // Map {}
在不同的编程语言或框架中,Set
和 Map
的具体用法和方法可能会略有差异,但基本的概念和功能是相似的。