最新要闻

广告

手机

光庭信息跌4.57% 2021上市超募11亿2022扣非降74% 时快讯

光庭信息跌4.57% 2021上市超募11亿2022扣非降74% 时快讯

搜狐汽车全球快讯 | 大众汽车最新专利曝光:仪表支持拆卸 可用手机、平板替代-环球关注

搜狐汽车全球快讯 | 大众汽车最新专利曝光:仪表支持拆卸 可用手机、平板替代-环球关注

家电

js的Set数据类型

来源:博客园


(相关资料图)

在js中,Set和Map相比,也有一组key的集合,但不存储value。由于key不能重复,所以,在Set中没有重复的key。因此,set使用的场景在于,可以提供一组没有重复元素的集合。

Set构造

要构造一个Set对象,需提供一个Array作为输入,或者直接构造一个空Set,如:

var set = new Set(["beijing","shanghai","tianjin","chongqing"]);  var set1 = new Set();

add()

add方法可以向set中添加一个元素,如果该元素已经存在,则不再添加。

var set = new Set(["beijing","shanghai","tianjin","chongqing"]);  set.add("tianjin");  set.add("guangzhou");

delete()

delete方法可以将给定的元素在Set中删除

var set = new Set(["beijing","shanghai","tianjin","chongqing"]);  set.delete("chongqing"); 

has()

通过has方法查询给定的元素是否存在

var set = new Set(["beijing","shanghai","tianjin","chongqing"]);  set.has("chongqing"); 

set的遍历

set是可迭代的,一组set可以通过for (... of ... ) 进行遍历

var set = new Set(["beijing","shanghai","tianjin","chongqing"]);    for (let x of set.values()){      console.log(x);  }

除了通过for (... of ...) 进行遍历,还可以通过set的迭代器直接进行遍历

var set = new Set(["beijing","shanghai","tianjin","chongqing"]);  var iter = set.values();  for (;;){      let v = iter.next();      if (v.done){         break;      }      console.log(v.value); }

clear()

clear方法可以清空set的元素

var set = new Set(["beijing","shanghai","tianjin","chongqing"]);  set.has("chongqing");   set.size();  //0

文章同时发表在:码农编程网欢迎访问

本节重点

  • 可以构造一个空的Set,或通过数组构造一个set;
  • Set区别于数组,其对象的元素不能重复且不能通过索引进行查询;
  • 介绍了Set对象的多个方法;
  • 介绍了Set对象如何进行遍历。

关键词: