Map WeakMap 学习
作者:互联网
/* map weakmap
javascript对象本质上是键值对的集合 hash结构
对象只能用字符串当作键 如果不是字符串 会调用toString()转换为字符串
为了解决这个问题 es6提供了map数据结构 这个构造函数,它类似于对象也是键值对的集合 但是key的范围不限于字符产 可以是任何类型
实例方法: size:key数量 key(key,value):添加/修改,返回当前map对象本身 get(key):获取,读取key对应的value,如果key不存在,返回undefined has(key):key是否存在map对象中,返回布尔值 delate(key):删除key 返回true,删除失败返回false clear():清空
遍历方法: key():返回key名的遍历器 values():返回键值的遍历器 entries():返回键值对的遍历器 forEach():遍历Map的所有成员 */ //创建一个空的map对象 // const map = new Map() //实例化方法操作 set添加成员 /* map .set(2022, "赚钱多多") .set('target', "脱单不脱发") console.log(map); */ //传参需要一个二维数组 const map = new Map([ [2022, "赚钱多多"], ['target', "脱单不脱发"] ]) console.log(map)
console.log(map.get(2022)) console.log(map.has(2022)) console.log(map.size)
//遍历 //遍历整个map for (let item of map) { console.log(item) } for (let [key, value] of map) { console.log(key, value) } for (let item of map.entries()) { console.log(item) } //遍历键 for (let key of map.keys()) { console.log(key) } //遍历值 for (let value of map.values()) { console.log(value) }
/*WeakMap 和 map 区别 1.WeakMap只接受对象作为键名 2.WeakMap的键名所指向的对象,不进入垃圾回收机制 */
const map2 = new WeakMap(); // map2.set(1, 2) // map2.set(Symbol(), 2) // map2.set(null, 2) map2.set([], {}) map2.set(document, 2022)
实例方法: size:key数量 key(key,value):添加/修改,返回当前map对象本身 get(key):获取,读取key对应的value,如果key不存在,返回undefined has(key):key是否存在map对象中,返回布尔值 delate(key):删除key 返回true,删除失败返回false clear():清空
遍历方法: key():返回key名的遍历器 values():返回键值的遍历器 entries():返回键值对的遍历器 forEach():遍历Map的所有成员 */ //创建一个空的map对象 // const map = new Map() //实例化方法操作 set添加成员 /* map .set(2022, "赚钱多多") .set('target', "脱单不脱发") console.log(map); */ //传参需要一个二维数组 const map = new Map([ [2022, "赚钱多多"], ['target', "脱单不脱发"] ]) console.log(map)
console.log(map.get(2022)) console.log(map.has(2022)) console.log(map.size)
//遍历 //遍历整个map for (let item of map) { console.log(item) } for (let [key, value] of map) { console.log(key, value) } for (let item of map.entries()) { console.log(item) } //遍历键 for (let key of map.keys()) { console.log(key) } //遍历值 for (let value of map.values()) { console.log(value) }
/*WeakMap 和 map 区别 1.WeakMap只接受对象作为键名 2.WeakMap的键名所指向的对象,不进入垃圾回收机制 */
const map2 = new WeakMap(); // map2.set(1, 2) // map2.set(Symbol(), 2) // map2.set(null, 2) map2.set([], {}) map2.set(document, 2022)
标签:Map,遍历,console,log,map,WeakMap,学习,set,key 来源: https://www.cnblogs.com/userxiaoxiami/p/16136542.html