24.WeakMap

WeakMap

WeakMap 是 Map 的弱引用,它也是在 Map 的基础上有了一些限制和自己的特性。

  • 没有 size 属性
  • 不能循环,没有 clear 方法
  • key 只能是对象
  • 如果元素在其他的地方没有再引用的话,垃圾回收机制会自动清理元素
let dp = {name:dp};
let tms = {name:tms};

const strong = new Map();
const weak = new WeakMap();

strong.set(dp , 'dp is best');
weak.set(tms , 'tms is beautiful');

几种使用场景

  • 当属性一定只能是对象的时候
  • 当数据不可用,希望集合中相关的引用和数据都会被自动回收,以达到优化内存的目的
  • 需要对数据进行循环,或获取集合数量的时候最好还是用 map
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.Set 基本用法 ES6提供了新的数据结构Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。Set本...
    雨飞飞雨阅读 1,870评论 0 7
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,760评论 18 399
  • java笔记第一天 == 和 equals ==比较的比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量...
    jmychou阅读 1,516评论 0 3
  • 本文出自 Eddy Wiki ,转载请注明出处:http://eddy.wiki/interview-java.h...
    eddy_wiki阅读 1,183评论 0 16
  • 我从不认为世上有某个道理、某本书、某个人能让人瞬间认清自己、懂得世界、从此过上幸福生活,包括这本书。但我始终...
    阿凯古阅读 1,398评论 13 13