JS中Map和WeakMap的不同

Map和WeakMap在JavaScript中都是用于存储键值对的集合。他们之间的主要区别在于键的类型和存储方式。

  1. 键的类型:在Map中,键可以是任何类型,包括对象、基本类型(例如字符串、数字)或者函数等。而在WeakMap中,键必须是对象,不能是其他基本类型。

  2. 存储方式:Map对键值对的存储是强引用,即只要Map对象存在,它的键值对就会一直在内存中,不会被垃圾回收机制回收。而WeakMap对键的引用是弱引用,如果没有其他地方引用这个键对象,那么这个键值对会被垃圾回收机制回收,以此来优化内存。

以下是代码举例:

// Map的使用
let map = new Map();
let keyString = "字符串";
let keyObj = {
   };
let keyFunc = function() 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值