ES6提供了新的数据结构set(一组数据的集合)
它类似于数组,但它的成员值都是唯一的(无重复的值)。
一 . Set解说:
1. Set本身是一个构造函数,用来生成Set数据结构
const a = new Set();
console.log(a.size); // 0 表示数据的数量为 0 ,是一个空的数据结构
2. Set函数可以接收一个数组作为参数,用来初始化
const arr = [1, 2, 3];
const b = new Set(arr);
console.log(b.size); // 3 表示当前数据结构中存储了 3 个值
二 . Set应用(数组去重)
const c = new Set([1, 1, 2, 2]);
console.log(c.size);
// 这样写是伪数组形式:const array = c; 要把它转化成真数组
const array = [...c];
console.log(array);
三 . Set的实例方法
1. 向set结构中添加值---add()
返回的是Set结构本身
const s = new Set();
s.add("a").add("b");
console.log(s.size); // 2
2. 从set结构中删除值---delete()
返回的是布尔值
const s = new Set();
s.add("a").add("b");
const r = s.delete("a");
console.log(r); // true
console.log(s.size); // 1
3. 判断某一个值是否是set数据结构中的成员---has()
返回的是布尔值
const s = new Set();
s.add("a").add("b");
const h = s.has("c");
console.log(h); // false
4. 清空set数据结构中的值---clear()
没有返回值
const s = new Set();
s.add("a").add("b");
const k = s.clear();
console.log(s.size); // 0 set数据结构中此时没有数据
四 . 遍历set数据结构(从中取值)
Set结构的实例与数组一样, 也拥有forEach方法,用于对每个成员执行某种操作, 没有返回值
const z = new Set([1, 2, 3]);
z.forEach(value => {
console.log(value); // 1 2 3
})
以上笔记very重要!!!