{
// Set WeakSet Map WeakMap
let list = new Set()
list.add(5)
list.add(7)
console.log(list)
console.log('size',list.size)
}
{
let arr =[1,2,3,4,5]
let list = new Set(arr)
console.log(list)
}
{
let list = new Set()
list.add(1)
list.add(2)
list.add(1)//重复元素不生效
console.log(list)
// 去重功能 元素的类形要一至 2 '2'都会显示
let arr =[1,2,'2','a','a',3,5]
let list2= new Set(arr)
console.log(list2)
}
{
let arr=['add','delete','clear','has']
let list = new Set(arr)
console.log('has',list.has('add'))
console.log('delete',list.delete('add'),list)
list.clear()
console.log('list',list)
}
{
let arr=['add','delete','clear','has']
let list = new Set(arr)
for(let key of list.keys()){
console.log('key',key)
}
for(let values of list.values()){
console.log('values',values)
}
for(let values of list){
console.log('values',values)
}
for(let [key,value] of list.entries()){
console.log('value',key,value)
}
list.forEach(function (item) {
console.log(item)
})
}
{
// WeakSet 和 set 支持数据类型不一样, 1.WeakSet的元素必需是对象 2.弱引用 3.没有clear方法 4.没有set属性 5.不能遍历
let weakList = new WeakSet()
let arg = {}
weakList.add(arg)
console.log(weakList)
}
{
let map = new Map()
let arr =['123']
map.set(arr,456)
console.log('map',map,map.get(arr))
}
{
let map =new Map([['a','1'],['b','2']])
console.log(map)
console.log(map.size)
console.log(map.delete('a'),map)
map.clear()
console.log(map)
}
{
let weakmap = new WeakMap()//同 weakset 一致
let o ={}
weakmap.set(o,123)
console.log(weakmap.get(o))
}
浙公网安备 33010602011771号