Set和WeakSet

set数据结构

类似数组,但是里面不能有重复值,

构建方法 new Set([]),返回一个对象

Set和WeakSet

Set和WeakSet

Set和WeakSet

Set和WeakSet

增加数据:

Set和WeakSet

Set和WeakSet

删除数据:

Set和WeakSet

Set和WeakSet

检查是否有某一项数据

Set和WeakSet

Set和WeakSet

查看setArr的长度

Set和WeakSet

Set和WeakSet

清楚所有数据

Set和WeakSet

Set和WeakSet

循环:

Set和WeakSet

Set和WeakSet

setArr的下标:

Set和WeakSet

Set和WeakSet

setArr的values

Set和WeakSet

Set和WeakSet

在我们直接for of setArr的时候,实际上循环的是setArr.values

setArr.entries

Set和WeakSet

Set和WeakSet

setArr的forEach

Set和WeakSet

Set和WeakSet

对于setArr来说,他的add,delete操作等都是返回自己,所以可以有下面的写法:

Set和WeakSet

Set和WeakSet

数组去重:

Set和WeakSet

Set和WeakSet

(注:这种方法简直了.....无言以对)

修改setArr数组

Set和WeakSet

Set和WeakSet

----------------------------------------------------------------------------------

我们知道数组中可以存放对象,那么Set里面也可以放对象,但是标准不希望我们在Set里面即存放数组又存放对象,所以给出了另一个WeakSet,专门用来存放对象

Set和WeakSet

Set和WeakSet

Set和WeakSet

Set和WeakSet

在使用Set或者WeakSet的时候,只能通过add方法来添加对象,不能直接在new的元素中添加对象

但是WeakSet没有size,也没有clear()

所以一般我们自己使用的时候,使用set就可以了