ES6 中的 WeakMap 和 WeakSet 都是集合类型,但它们之间有一些关键区别:
存储内容:
对键/元素的引用:
可枚举性:
for...of 循环或 WeakMap.prototype.forEach() 方法遍历 WeakMap 中的键/元素。for...of 循环或 WeakSet.prototype.forEach() 方法遍历 WeakSet 中的元素。大小获取:
size 属性),因为你无法确定哪些对象仍然存在于 WeakMap 中。总结一下,WeakMap 和 WeakSet 主要用于存储对象,并且它们对对象的引用是弱引用,这有助于避免内存泄漏。它们的主要区别在于 WeakMap 存储键值对,而 WeakSet 只存储元素。此外,它们都是不可枚举的,且没有提供获取集合大小的方法。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。