JavaScript深入之ES6中的Map和Set

  • Post author:
  • Post category:java




JavaScript深入之ES6中的Map和Set及实现

Set和Map主要的应用场景在于数组去重和数据存储,原来Set是一种叫做集合的数据结构,Map是一种叫做字典的数据结构。



Set

集合是由一组无序且唯一(即不能重复)的项组成的,可以想象成集合是一个既没有重复元素,也没有顺序概念的数组,ES6提供了新的数据结构Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。

Set 本身是一个构造函数,用来生成 Set 数据结构

// 去除数组的重复成员
let array = [1,2,1,4,5,3];
[...new Set(array)]     // [1, 2, 4, 5, 3]

Set的属性:size:返回集合所包含元素的数量

Set的方法:

(1)add(value):向集合添加一个新的项

(2)delete(value):从集合中移除一个值

(3)has(value):如果值在集合中存在,返回true,否则false

(4)clear(): 移除集合里所有的项

遍历方法:

(1)keys():返回一个包含集合中所有键的数组

(2)values():返回一个包含集合中所有值的数组

(3)entries:返回一个包含集合中所有键值对的数组(感觉没什么用就不实现了)

(4)forEach():用于对集合成员执行某种操作,没有返回值

set构造函数可以接受一个数组当参数,用来初始化。

1、看数组的并集

let arr1 = [1, 2, 3];



版权声明:本文为m0_51207602原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。