set、weakset
阿新 • • 發佈:2020-09-03
知識點一:set
set是ES6中一個新的資料結構,set的使用和陣列是類似的,區別就是,set裡沒有重複項
1、定義:通過new定義
let set = new Set([1,2,3,4,5,6,7,2,1,3,5]); console.log(set);//Set(7){1, 2, 3, 4, 5,6,7}
2、API
- add
- delete
- has
- clear
console.log( set.add(9));//Set(8){1, 2, 3, 4, 5, 6, 7, 9} console.log( set.delete(4));//Set(7){1, 2, 3, 5, 6, 7, 9}console.log(set.has(3));//true console.log(set.has(8));//false console.log(set.clear());//set(0){}
3、屬性
set裡由size屬性,可以獲取set的長度
console.log(set.size);//0
4、set遍歷
可以通過forEach遍歷set。 set裡的key和value是一樣的
let set = new Set([1, 2, 3, 4, 5, 6]); let iterator = set.entries(); console.log(iterator.next()); console.log(iterator.next()); console.log(iterator.next()); console.log(iterator.next()); console.log(iterator.next()); console.log(iterator.next()); console.log(iterator.next()); console.log(set.keys()); console.log(set.values()); set.forEach((values,keys)=>{ console.log(values); })
知識點二:weakset
1、使用new WeakSet()建立
2、weakset中的每一項都是引用型別
3、常用的API
- add
- delete
- has
- clear