96SEO 2026-05-25 15:54 2
嘿大家, 今天聊一聊WeakMap和WeakSet跟普通的MapSet到底有什么区别啊?说实话,我这也不是专业的,只是跟着网上的一些文章看了下随便拼凑了一篇。不要太认真哦。
WeakMap 和 WeakSet 看起来很高大上,其实它们只是"弱引用" 的集合。简单说它们只存对象,而不存基本类型;而且它们不会阻止垃圾回收器回收对象。听起来就很酷,但其实吧用的时候也有不少坑。

何必呢? 如果你想象一下 一个"强引用" 就像把人绑在墙上,让他永远站在那里;而弱引用就像给人一个弹簧扣,让他走到墙外也能掉下来被回收。
"防止内存泄漏". 在前端开发里 经常需要把某个 DOM 节点跟一些状态或者缓存绑定在一起,如果用普通 Map 存储,一旦页面删除了这个节点,节点仍然会被保留在 Map 中,不会被垃圾回收,这就导致内存泄漏。
往白了说... "Map 可以键任意类型, 包括字符串、数字、对象等;值也一样可以是任何东西". 而 WeakMap 则只接受对象作为键,不能用字符串或者数字。如果你试图用字符串做键,会直接报错。
比方说:
const wm = new WeakMap; wm.set; // OK wm.set; // 报错
坦白讲... 这里说明一下:其实很多人会误以为 WeakMap 支持遍历, 主要原因是他们看到 Map 有 .keys、.values 等方法。但是 WeakMap 并没有这些方法,主要原因是它本身就是不可遍历的。
"Set 可以存任何唯一值, 包括基本类型和对象; 很棒。 而 WeakSet 只能存对象".
所以如果你想让一个数组去重,可以用 Set 很方便:,好家伙...
const arr = ; const uniq = ; //
但是如果你想让一个集合只存 DOM 节点,并且希望节点被删除后自动从集合中消失,那就要用 WeakSet,最后强调一点。。
主要原因是它们内部使用的是“弱引用”,所以浏览器不敢给你提供完整的数据结构供你遍历。否则的话,如果你拿到所有元素,你就能破坏 GC 的设计,让内存泄漏更严重。所以官方决定:Weak* 集合是不可枚举的, 也没有 size 属性, 不地道。 没有 clear 方法,也没有 forEach 等等。只有少数几个操作。这就意味着如果你需要统计或者批量操作, 就必须自己维护一份“强引用”的列表,或者改用普通 Map/Set。要么就别用了。
划水。 Lorem ipsum dolor sit amet consectetur adipisicing elit. Maiores quidem totam quibusdam eius impedit similique! Quibusdam sapiente sed vel? Nostrum quisquam fuga culpa molestiae accusamus! Lorem ipsum dolor sit amet consectetur adipisicing elit.
这里打算说一句话:“我真的不知道这段文字在干嘛。 实际上... ”但我还是忍不住打出来所以先放着吧!.
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback