js的set和map用法
【原创实用版】
1.JavaScript 中的集合 
2.set 和 map 的定义和用途 
3.set 的用法 
4.map 的用法 
5.set 和 map 的区别
正文
1.JavaScript 中的集合
在 JavaScript 中,集合是一种特殊的数据类型,它可以用来存储一组唯一的值。集合中的元素是无序的,且不能重复。在 JavaScript 中,主要有两种集合类型:Set 和 Map。
2.set 和 map 的定义和用途
Set(set)是一种特殊的数据类型,它允许我们存储一组唯一的值。Set 对象可以用来检查一组值是否存在重复项,也可以用来删除或添加元素。Set 对象的元素是无序的,且不能重复。
Map(map)是另一种特殊的数据类型,它允许我们存储一组键值对。Map 对象可以用来存储与数据相关的元数据,如数据的来源、类型等。Map 对象的元素是有序的,且每个元素都由一个键和一个值组成。
3.set 的用法
Set 对象可以通过调用 Array.prototype.filter() 方法或者使用构造函数直接创建。Set 对象的元素可以是数组、字符串、对象等。
例如,我们可以通过以下代码创建一个 Set 对象:
```javascript 
const mySet = new Set([1, 2, 3, 4, 5]); 
```
我们还可以通过调用 Array.prototype.filter() 方法来创建一个 Set 对象:
```javascript 
const mySet = [1, 2, 3, 4, 5].filter(value => true); 
```
4.map 的用法
Map 对象可以通过调用 duce() 方法或者使用构造函数直接创建。Map 对象的元素可以是数组、字符串、对象等。
例如,我们可以通过以下代码创建一个 Map 对象:
```javascript 
const myMap = new Map(); 
myMap.set("key1", "value1"); 
myMap.set("key2", "value2"); 
myMap.set("key3", "value3"); 
```
我们还可以通过调用 duce() 方法来创建一个 Map 对象:
```javascript 
const myMap = [["key1", "value1"], ["key2", "value2"], ["key3", "value3"]].reduce((accumulator, currentValue) => { 
  accumulator.set(currentValue[0], currentValue[1]); 
  return accumulator; 
}, new Map()); 
```
5.set 和 map 的区别
Set 和 Map 都是特殊的数据类型,它们都可以用来存储一组值。但是,Set 和 Map 之间存在一些区别:
- Set 的元素是无序的,且不能重复;Map 的元素是有序的,且每个元素都由一个键和一个值组成。 
- Set 对象可以用来检查一组值是否存在重复项,也可以用来删除或添加元素;Map 对象可以用来存储与数据相关的元数据,如数据的来源、类型等。 
javascript数组对象
- Set 对象的元素可以是数组、字符串、对象等;Map 对象的元素是键值对,其中键和值可以是数组、字符串、对象等。