es6的set方法有哪些-成都快上网建站

es6的set方法有哪些

这篇文章主要介绍“es6的set方法有哪些”,在日常操作中,相信很多人在es6的set方法有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”es6的set方法有哪些”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

成都创新互联专注于新密网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供新密营销型网站建设,新密网站制作、新密网页设计、新密网站官网定制、重庆小程序开发服务,打造新密网络公司原创品牌,更为您提供新密网站排名全网营销落地服务。

本教程操作环境:windows7系统、ECMAScript 6版、Dell G3电脑。

ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。

很多时候我们把Set叫做 集合,但是,Set可以是集合,集合不一定是Set。

特性:唯一性=>不重复=>能够对数据进行去重操作。

创建Set

Set 本身是一个构造函数,调用构造函数用来生成 Set 数据结构。

关键词 标识符 = new Set();

let i = new Set();

Set 函数可以接受一个数组(或类似数组的对象)作为参数,用来进行数据初始化。

let i = new Set([1, 2, 3, 4, 4]);  //会得到  set{1, 2, 3, 4,}

注:如果初始化时给的值有重复的,会自动去除。集合并没有字面量声明方式,只能用new关键字来声明。

Set的属性

常用的属性就一个:size--返回 Set 实例的成员总数。

let s = new Set([1, 2, 3]);
console.log( s.size ); // 3

Set的方法

Set 实例的方法分为两大类:操作方法(用于数据操作)和遍历方法(用于遍历数据)。

操作方法:

  • add(value)    添加数据,并返回新的 Set 结构

  • delete(value)   删除数据,返回一个布尔值,表示是否删除成功

  • has(value)    查看是否存在某个数据,返回一个布尔值

  • clear()      清除所有数据,没有返回值

let set = new Set([1, 2, 3, 4, 4]);
// 添加数据 5
let addSet = set.add(5);
console.log(addSet); // Set(5) {1, 2, 3, 4, 5}

// 删除数据 4s
let delSet = set.delete(4);
console.log(delSet); // true 此处返回值是个boolean 表示 是否删除成功

// 查看是否存在数据 4
let hasSet = set.has(4);
console.log(hasSet); // false

// 清除所有数据
set.clear();
console.log(set); // Set(0) {}

遍历方法:

Set 提供了三个遍历器生成函数和一个遍历方法。

  • keys()     返回一个键名的遍历器

  • values()    返回一个键值的遍历器

  • entries()    返回一个键值对的遍历器

  • forEach()   使用回调函数遍历每个成员

let color = new Set(["red", "green", "blue"]);
for(let item of color.keys()){
 console.log(item);
}
// red
// green
// blue
for(let item of color.values()){
 console.log(item);
}
// red
// green
// blue
for(let item of color.entries()){
 console.log(item);
}
// ["red", "red"]
// ["green", "green"]
// ["blue", "blue"]
color.forEach((item) => {
 console.log(item)
})
// red
// green
// blue

到此,关于“es6的set方法有哪些”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!


网站题目:es6的set方法有哪些
浏览路径:http://kswjz.com/article/gejdoc.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流