1.map 1.1map是一种键值对的结构,用来解决以往不能用对象作为键名的问题。 1.2 查找速度极快,可以使用对象,函数,基本类型作为键名 2.map的创建
let name = {name: '张三'} function age (age) { return age } let map = new Map() map.set({name}) map.set(age(18)) console.log(map) //0: {Object => undefined} 1: {18 => undefined}3.增删改查 3.1查
console.log(map.has(name))//true3.2增
map.set(name)3.3删
console.log(map.delete(name)) //true3.4取值
map.set(name, '今天要下雨') console.log(map.get(obj))//今天要下雨4.遍历 4.1 map中取值
console.log(map.keys()) //键名 console.log(map.values()) //值 console.log(map.entries()) //整个4.2for of遍历
for (const item of map.values()) { console.log(item) //遍历值 }4.3 forEach遍历
map.forEach(function(keys,values){ console.log(keys,values) })5.通过转化为数组来过滤map
let map = new Map([["name", "张三"], ["name1", "张飞"], ["name2", "黄博文"]]) let newArr = [...map].filter(function(item){ return item[1].includes('张') }) let newMap = new Map(newArr) console.log(newMap.values())6.WeakMap和WeakSet一样,都是弱应用,数据格式又跟map一样,只是里面的内容必须是引用类型。