zl程序教程

您现在的位置是:首页 >  前端

当前栏目

set、map、WeakSet和WeakMap

setMap WeakMap WeakSet
2023-06-13 09:13:56 时间

set

set是类似于数组集合的数据结构,成员唯一且无序 操作方法 add('xx'):添加,返回添加后的值 delect('xx'):删除,返回boolean has('xx'):判断是否存在某个值 clear():清空集合 遍历方法 values():获取value组成的迭代器对象 keys():获取key组成的迭代器对象 entries():获取键值对组成的迭代器对象 forEach(callbackFn,thisArg): 用于对集合成员callbackFn操作,若有thisArg,则回调中的this为它,没有返回值。(箭头函数获取不到this,你懂的)

map

map对象保存键值对,任何值都可以作为一个键或一个值 操作方法 set(key,value):添加元素 get(key):通过key获取value has(key):判断是否存在 delete(key) :通过key删除某元素 clear():清空所有元素 编辑方法 keys();获取key组成的迭代器对象 values():获取值组成的迭代器对象 entries():获取键值对组成的迭代器对象 forEach(callbackFn,thisArg): 用于对集合成员callbackFn操作,若有thisArg,则回调中的this为它,没有返回值。(箭头函数获取不到this,你懂的)

WeakSet

  • WeakSet 只能存储对象引用,不能存放值,而set对象可以,不可遍历
  • weakSet对象存储对象是弱引用的,对象会被垃圾回收机制回收掉 操作方法 add(value):添加元素,元素类型为引用类型 has(value):判断是否包含某个元素 delete(value):删除某个value

WeakMap

weakMap对象是一组键值对的集合,其中键是弱引用,所以键不可以为基本数据类型,必需是引用类型,值可以为任意值 操作方法 has(key):是否存在某个键 get(key):通过key值获取value set(key,value):设置一个元素 delete(key)