接上Set Map數(shù)據(jù)結(jié)構(gòu)
let list=new Set();
list.add(5);
list.add(6);
//輸出Set的長度?
list.size();
//2
let arr=[1,2,3,4,5];
let list=new Set(arr);
list.size? ?//5
Set數(shù)據(jù)類型的元素必須是唯一的
//這個特性可以去重(不會做數(shù)據(jù)類型不同的去重)
let arr=[1,3,4,3,2,3];
let list2=new Set(arr);
console.log(list2);
add 添加 delete 清除 clear 清除 has判斷是否存在
has 有則true 沒有則false
-----------Set實例的遍歷
for(let key of list.keys()){
console.log('keys',key)
}
key與value,entries的打印的都是值的名稱
foreach
list.forEach(function(item){console.log(item)});
//集合中的值
WeakSet()
let weakList=new WeakSet();
let arg={};
weakList.add(arg);
和Set區(qū)別 支持的數(shù)據(jù)類型不同
WeakSet只能對象
弱類型的引用 不會檢測垃圾回收機制,沒有clear方法,size屬性,不能遍歷
-----------Map
let map=new Map();
let arr=['32'];
map.set(arr,456);? ?//添加元素用set(key,value)456
map.get(map);
第二種定義方式
let map=new Map([ [ 'a',123], [ 'b',456] ]);
a 123 b 456
map.size
map.delete
map.clear
weakMap();
和上面相同