ES6中Map与Set

ES6中Map与Set

1、Map
Map 是一个用于保存键值对数据的集合。任何类型都可以作为一个键(Key)或一个值(Value)。

1.1 Map的Key

使用数值类型(number)作为Key

var map = new Map();
map.set(123, "map的键可以是数值类型");
console.log(map.get(123))// map的键可以是数值类型
map.set(1.6, "map的键可以是带小数点的数值类型");
console.log(map.get(1.6))// map的键可以是带小数点的数值类型

运行结果:
在这里插入图片描述
由此可见Map的键(Key)用数值类型也是可以的,接下来再看看使用数组作为Key

var map = new Map();
var arr = new Array();
map.set(arr, "map的键可以是数组");
console.log(map.get(arr))// map的键可以是数组

运行结果:
在这里插入图片描述
以上就是Map中Key的介绍,当然还有其他类型我就不一一列举了,总之,Map的Key可以是任意类型。

1.2 Map中常用的方法:

var map = new Map();
/*map添加数据方法set()*/
map.set(添加数据的Key , 需要添加的值);
//当然一个key是可以被多次set的但是它的数据会被覆盖
			
			
/*Map删除数据方法delete()*/
map.delete(需要删除的数据的Key);

/*清空map里的的数据*/
map.clear();
			
			
/*Map获取一个Key的值get()方法*/
map.get(需要获取元素的Key);

//还有个size属性,返回Set当前存放数据的个数。

以上Map常用的方法,接下来我们看看Set。

2、Set
Set对象是一个可以存储任意类型数据的集合,并且是唯一的。

2.1 Set唯一:

var mySet = new Set();
			 
mySet.add("张三"); 
mySet.add("李四"); 
mySet.add("王五");
mySet.add("王五");
mySet.add("赵六");
console.log(mySet);

运行结果:
在这里插入图片描述
从运行结果我们可以看到“王五”被我添加过两次,但是在运行后我们看到Set中只有一个“王五”,这也证明了Set的唯一,当然这里有个疑问,后面添加的是覆盖了还是直接没添加进来,接着再看一个案例

var mySet = new Set();
			
var arr = new Array(1,3);
mySet.add(arr);
console.log("mySet);
			
arr = new Array(1,4);
console.log(mySet);

运行结果:
在这里插入图片描述
这里我添加了一个数组,然后重新再new了一个赋值,看到输出结果是没变的所以证明,第二次添加是直接没有加进去。

2.2 Set的常用方法:

add(value) 添加数据,可以是任意类型;

delete(value) 删除某个值;

has(value) 返回一个布尔类型,表示该值是否是Set的成员;

clear() 清空Set中所有成员;

还有个size属性,返回Set当前存放数据的个数。

以上就是ES6中Map与Set的一些基本用法。

发布了2 篇原创文章 · 获赞 3 · 访问量 278

猜你喜欢

转载自blog.csdn.net/qq_44781628/article/details/105633948