es6(10)--Set,Map(1)

 1 //Set
 2 {
 3     let list=new Set();
 4     list.add(5);//添加
 5     list.add(7);
 6     //属性size就是长度
 7     console.log('size',list.size);//2
 8 }
 9 {
10     let arr = [1,2,3,4,5];
11     let list = new Set(arr);
12     console.log(list.size);//5
13 }
14 {
15     //去重
16     let list = new Set();
17     list.add(1);
18     list.add(2);
19     list.add(1);
20     console.log('size',list);//1,2,没有最后的1
21 
22     let arr=[1,2,3,1,2];
23     let list2=new Set(arr);
24     console.log('unique',list2);//1,2,3,没有后面的1,2
25 }
26 {
27     let arr=['add','delete','clear','has'];
28     let list=new Set(arr);
29     console.log('has',list.has('add'));//查看是否存在
30     console.log('delete',list.delete('add'),list);//删除
31     console.log('clear',list.clear('add'),list);//清空
32 }
33 //遍历
34 {
35     let arr=['add','delete','clear','has'];
36     let list=new Set(arr);
37 
38     for(let key of list.keys()){
39         console.log('key',key);
40     }
41     for(let value of list.values()){
42         console.log('keys',value);
43     }
44     for(let [key,value] of list.entries()){
45         console.log('entries',key,value);
46     }
47     list.forEach(function(item){
48         console.log(item)
49     })
50 }
51 //WeakSet:元素只能是对象,不能是数值,不能遍历,没有clear方法,没有set属性
52 {
53     let weakList=new WeakSet();
54     let arg={};
55     weakList.add(arg);
56     //weakList.add(2);不能是数值
57     console.log('weakList',weakList);
58 }
59 //Map,遍历和set一样
60 {
61     let map= new Map();
62     let arr=['123'];
63     map.set(arr,456);//添加元素(key,value)
64     console.log('map',map,map.get(arr));//get(key)获取值
65 }
66 {
67     let map= new Map([['a',123],['b',456]])
68     console.log(map,map.size)
69     console.log(map.delete('a'),map)
70     console.log(map.clear(),map)
71 }
72 //同WeakSet
73 {
74     let weakmap=new WeakMap();
75 }
原文地址:https://www.cnblogs.com/chenlw/p/9227888.html