使用WeakMaps在Javascript中创建常规弱引用
Creating a regular weak-reference in Javascript using WeakMaps
我正试图用WeakMaps做显而易见的事情:我想创建一个弱引用。特别是,我希望有一个事件侦听器列表,而该列表不会影响侦听器的生活。
所以我很高兴能找到WeakMaps,直到我发现它们只是为了满足一个(相当罕见)用例而构建的,即扩展原本密封的对象。我想不出我什么时候想这么做,但我一直需要听众名单。
这有可能以我从未想过的聪明方式使用WeakMaps吗?
不,不可能使用WeakMaps创建弱引用。WeakMaps是不可迭代的,要使用它们,您总是需要密钥。这是一个深思熟虑的决定(也在这里),这样垃圾收集就不会影响程序的语义——这正是您想要的。
ES8可能会提供真正的弱参考,请参阅此处和那里的草稿。
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 为effect Composer创建GodRays效果过程
- 从javascript创建一个列表
- onkeyup无法动态创建多个文本区域
- 如何使用javascript从主svg对象动态创建svg视图框
- 如何访问声音管理器2创建的声音对象
- 我已经创建了一个jquery转盘,并使用if条件来运行和停止转盘
- Kendo:我该如何在树视图中创建一个递归的hieiarchy
- 使用Facebook live API创建实时视频对象时的隐私设置
- 在动态创建的元素上获取对特定选择器的引用
- 使用WeakMaps在Javascript中创建常规弱引用
- Javascript构造函数创建对象与常规对象
- Django 无法在视图中创建常规对象,返回 500 错误
- 从两个常规数组创建一个关联数组
- 为不同的用户创建一个常规页面
- 使用JavaScript与常规HTML创建HTML元素
- 是否可以在创建常规精细上传器实例的同时创建一个s3上传器实例
- 创建常规函数或原型函数,哪个更有效或更好?
- 从常规数组创建一个新的二维数组
- 是否可以创建一个“;弱参考“;在JavaScript中