map与set对象一览

map对象是有key与value组成的,key值可以是字符,对象,函数,NAN等,创建map对象  var myMap = new Map()

myMap.set("hello","woel")  ,myMap.get("hello")  

map对象可以用for of遍历  如 for (var [key,value] of myMap)  或者用 myMap.forEach(function(value,key)) 来遍历

map对象与数组相互转换

重点如下

1.对于二维数组  如  a=[['key1','value1'],['key2','value2']]转换成map对象

var neyMap = new Map(a)

map对象转换成二维数组  var b = Array.from(neyMap)

2.map的克隆

var  a= new Map([['key1','value1'],['key2','value2']])

var b = new Map(a)

3.map的合并

var a = new Map([['key1','value1'],['key2','value2']])

var b = new Map([['key2','valuer'],['key5','value5']])

var c = new Map([...a,...b])   相同的key值后面的会替换前面的

关于set对象,set对象存储的值都是唯一的 

var mySet = new Set()

mySet.add(1)

mySet.add(2)

mySet.add(2)

重点set对象与数组的转换

var mySet = new Set(['a','b','c'])

var ArrayT = [...mySet]

1.set对象通常用来作为数组去重,数组合并去重,数组取交集,数组取差集

1.数组去重

var mySet1 = new Set([1,3,4,4,5])

var arry = [...mySet1]

2.数组合并去重

var mySet1 = new Set([1,3,4,4,5])

var mySet2 = new Set([1,3,7,6,5])

var newSet = new Set([...mySet1,...mySet2])

var arry = [...newSet]

3.数组取交集

var mySet1 = new Set([1,3,4,4,5])

var mySet2 = new Set([1,3,7,6,5])

var t = new Set([...mySet1].filter(x =>mySet2.has(x)))

var arry = [...t]

4.数组取差集

var mySet1 = new Set([1,3,4,4,5])

var mySet2 = new Set([1,3,7,6,5])

var c = new Set([...mySet1].filter(x =>  !mySet2.has(x)))

var arry = [...c]

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值