map集合的应用场景(未完善)
1.Map集合常被用来获取已存的信息。
简单的来说,在一个数组里面获取数组对象里面某些键值 比如ID或者name
就可以数组里面想要的值存到Map里面
let lMap = {}
res.data.map((item) => {
lMap[item.id] = item.name
})
this.lineMap = lMap
lineMap 里面的结构类型
{
id:name,
id:name,
id:name,
id:name,
......
}
在使用的时候 直接lineMap [id] 来获取对应的值
set的应用场景(待完善)
1.set集合可以看成数组 类似 arr=[“1”,“2”,“3”]
2.利用set不允许出现键值重复的特点 可以进行数组去重
实列:
1. 将重复的字符串去重转换为数组
2. new Set()返回的是{}类型 需要转换成数组
let a="1,2,3,4,2,34,5,6,4,3,2,3,45,3"
let b=Array.from(new Set(a.split(',')))
console.log(b)
filter的应用场景 (待完善)
1.利用filter对两个对象数组根据id相同取交集
let add=arr2.filter(item=>arr1.some(ele=>ele.id===item.id)) //取出arr1和啊arr2中一样的对象
2.利用filter对两个对象数组根据id相同去重 (去重的方法可能不是最好的 ,但是代码量少,哈哈)
let arr1=[{id:1,name:'老大'},{id:2,name:'老二'},{id:4,name:'老四'},{id:6,name:'老六'},]
let arr2=[{id:1,name:'老大'},{id:3,name:'老三'},{id:4,name:'老四'},{id:5,name:'老五'},]
let add=arr2.filter(item=>!arr1.some(ele=>ele.id===item.id)) //在arr2中去除arr1中一样的对象
add=[...add,...arr1] // 间接根据id相同的去