ES6-Set的增加、查找、删除、遍历、查看长度、数组去重

set 是es6新出的一种数据结构,里边放的是数组。 作用:去重(set里边的数组不能重复)
MDN:Set 对象允许你存储任何类型的唯一值,无论是原始值或者是对象引用。
总结:
1.成员唯一、无序且不重复;
2.[value, value],键值与键名是一致的(或者说只有键值,没有键名);
3.可以遍历,方法有:add、delete、has、clear、entries、forEach、keys、values
3.Set也能用来保存NaN和undefined, 如果有重复的NaN, Set会认为就一个NaN(实际上NaN!=NaN);
 
声明一个Set
let setArr = new Set(['ananiah','大诶啊','18']);
console.log(setArr)     //Set(3) {"ananiah", "大诶啊", "18"}

增加

//增加
setArr.add('晴空万里');
console.log(setArr) //Set(4) {"ananiah", "大诶啊", "18", "晴空万里"}

查找

//查找
console.log(setArr.has('ananiah')) //true

删除

//删除某个
setArr.delete('18');
console.log(setArr)  //Set(3) {"ananiah", "大诶啊", "晴空万里"}
//全部删除
 setArr.clear();
console.log(setArr)  //Set(0) {}

遍历

//for...of
for(let item of setArr){
    console.log(item) //打印全部
}
//forEach
setArr.forEach(value => console.log(value));

查看长度

//size查看长度
console.log(setArr.size) //3

 数组去重

var array = [0,1,1,2,2,5,5,66,99,65,65];
console.log(Array.from(new Set(array))); //Array(7) [0, 1, 2, 5, 66, 99, 65]
console.log([...new Set(array)]); //Array(7) [0, 1, 2, 5, 66, 99, 65]

 

posted @ 2019-06-23 01:45  Ananiah  阅读(4209)  评论(0编辑  收藏  举报