front-end-pigs / blog

博客
2 stars 0 forks source link

WeakMap和Map区别,WeakSet 和 Set的区别 #17

Open jangdelong opened 4 years ago

jangdelong commented 4 years ago

Map和WeakMap的主要区别:

  1. Map对象的键可以是任何类型,但WeakMap对象中的键只能是对象引用 ;
  2. WeakMap不能包含无引用的对象,否则会被自动清除出集合(垃圾回收机制);
  3. WeakSet对象是不可枚举的,无法获取大小。

WeakSet 和 Set的区别

  1. 元素只能是对象, 对象也是弱引用;
    1. 无法遍历, 没有size, 也没有clear。