ES6的set数据结构详解

set的声明及它的一些方法

set数据结构类似与数组,但不同的是set没有重复的值(可以set把它理解为集合),set本身是一个构造函数
语法:

var s1=new Set();
var s2=new Set([1,2,3]);

要注意的是set数据结构没有length属性,但有size属性来取代length

var s1=new Set();
            var s2=new Set([1,2,3,3,3,3,4,5]);		//3重复多次
            console.log(s1.size);				// 0
            console.log(s2.size);				// 5
            console.log(s2.length);				//undefined

当然也可以用set来把数组里面的数据去重

var s2=new Set([1,2,3,3,3,3,4,5]);
            var s=[...s2];				//利用扩展运算符
            console.log(s);				//s=[1,2,3,4,5]

在set数据结构下有一些方法:

var s=new Set();
s.add(1).add(2).add(4); //向s添加值
s.delete(2); //删除s内值为2的数据
s.has(1); //表示s是否有1这个值,返回true|false
s.clear() //清除s所以数据

set的遍历
var hobbies=['篮球','足球','羽毛球','foo'];
            var s=new Set(hobbies);           
            s.forEach((value)=>{              //foreach()遍历
                console.log(value);
            })

想要了解更多的关于他的遍历foreach的其他参数可以戳这个https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Set/forEach
本文只用于个人学习和记录

你可能感兴趣的:(JS,javascript,es6)