标签:11 ES6 console log Map value map2 map key
Map:一种新的数据结构常用方法 遍历 应用场景 WeakMap 常用方法:
let map = new Map() let obj = { name: '张三' } map.set(obj, 'zhangsan') console.log(map); console.log(map.get(obj)); console.log(map.has(obj)); map.delete(obj) let map2 = new Map([ ['name', 'lisi'], ['age', 18], ]) console.log(map2); console.log(map2.size); console.log(map2.has('name')); console.log(map2.get('age')); map2.set('name', '王五') map2.delete('age') console.log(map2);
遍历:
// 注意forEach里面第一个参数是value,第二个参数是key map2.forEach((value, key) => console.log(value, key)) // 注意for of里面第一个参数是key,第二个参数是value for (let [key, value] of map2) { console.log(key, value); } for (let key of map2.keys()) { console.log(key); } for (let value of map2.values()) { console.log(value); } for (let [key, value] of map.entries()) { console.log(key, value); }
map的应用场景跟object是一样的 map的api跟object比多一点灵活, 比如has方法,object只能循环判断, 比如size属性,object也进行循环计数。 在外资料显示,频繁对对象增删操作,map比object性能上更加有优势。 Weakmap: Weakmap跟map相似,但是key只能是引用数据类型
let wm = new WeakMap() wm.set([1], 2) wm.set({ name: '张三' }, '啦啦啦') console.log(wm);
wm.clear(),注意WeakMap不支持clear方法 WeakMap也不支持遍历 因为不可遍历,所以也没有size属性 WeakMap也是弱引用,垃圾回收机制被回收后,弱引用里面的键值对也会消失,放置内存泄露
标签:11,ES6,console,log,Map,value,map2,map,key 来源: https://www.cnblogs.com/MarsPGY/p/14828422.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。