Set

作者: 懂会悟 | 来源:发表于2020-09-24 08:21 被阅读0次

1、Set的定义

Set是ES6 提供了新的数据结构,它类似于数组,但是成员的值都是唯一的,没有重复的值,Set本身是一个构造函数,用来生成 Set 数据结构。Set函数可以接受一个数组(或者具有 iterable 接口的其他数据结构)作为参数,用来初始化

const set = new Set([1, 2, 3, 4, 4]);

[...set]

// [1, 2, 3, 4]

2、Set实例的属性与方法

  • size表示Set的长度
  • add(value):添加某个值,返回 Set 结构本身
  • delete(value):删除某个值,返回一个布尔值,表示删除是否成功
  • has(value):返回一个布尔值,表示该值是否为Set的成员
  • clear():清除所有成员,没有返回值
const set = new Set([1, 2, 3, 4, 4])
console.log(set.size)
// 4
const result = set.add(5)
console.log(result)
// { 1, 2, 3, 4, 5 }
console.log(result.delete(5))
// true
console.log(result.has(1))
// true
console.log(result.clear())
console.log(result)
// {}

3、Set的遍历

  • keys()
  • values()
  • entries()
// keys()
const set = new Set(['red', 'green', 'blue'])
for (let item of set.keys()) {
  console.log(item)
}

red green blue

// values()
const set = new Set(['red', 'green', 'blue'])
for (let item of set.values()) {
  console.log(item)
}

// red green blue
// entries()
const set = new Set(['red', 'green', 'blue'])
for (let item of set.entries()) {
  console.log(item)
}

// [ 'red', 'red' ] [ 'green', 'green' ] [ 'blue', 'blue' ]

4、Set的应用

  • 数组去重 [...new Set(array)]
const arr = [3, 5, 2, 2, 5, 5]
const unique = [...new Set(arr)]
console.log(unique)
// [ 3, 5, 2 ]

相关文章

网友评论

      本文标题:Set

      本文链接:https://www.haomeiwen.com/subject/djxosktx.html