WeakMap
2022年10月14日大约 1 分钟
概述
WeakMap 对象是一组键/值对的集合,其中的键是弱引用的
其键必须是对象,而值可以是任意的
语法:
new WeakMap([iterable])
参数
- iterable:Iterable 是一个数组(二元数组)或者其他可迭代的且其元素是键值对的对象。每个键值对会被加到新的 WeakMap 里。null 会被当做 undefined
WeakMap.length
值为 0
WeakMap.prototype.set()
- 描述:根据指定的 key 和 value 在 WeakMap 对象中添加新/更新元素
- 语法:
wm.set(key, value)
- 参数
- key:必须是对象,是要在WeakMap 对象中添加元素的 key 部分
- value:任意的值,是要在 WeakMap 对象中添加/元素的 value 部分。
- 返回值:该WeakMap对象
WeakMap.prototype.get()
- 描述:返回 WeakMap 指定的元素
- 语法:
wm.get(key)
- 参数
- key:要从 WeakMap 获取的元素的键
- 返回值:返回与指定键相关联的值,如果 WeakMap 对象找不到这个键则返回 undefined
WeakMap.prototype.has()
- 描述:根据WeakMap对象的元素中是否存在 key 键返回一个boolean值
- 语法:
wm.has(key)
- 参数
- key:用来检测 WeakMap对象中是否存在元素的键为 key
- 返回值:如果指定的 key 存在于某个元素中则返回 true,否则返回flase
WeakMap.prototype.delete()
- 描述:移除 WeakMap 对象中指定的元素
- 语法:
myMap.delete(key)
- 参数
- key:需要删除的元素的键
- 返回值:如果成功删除,返回 true,否则返回 false