ES6 Set结构

这节学习Set数据结构,注意这里不是数据类型,而是数据结构。它是ES6中新的东西,并且很有用处。

Set的数据结构是以数组的形式构建的。

set的声明:

new Set 有去重的功能

1
2
let setArr = new Set ( [ 'wayne' , 'judy' , 'web' , 'judy' ] ) ;
console . log ( setArr ) ; //Set {"wayne", "judy", "web"}

Set和Array 的区别是Set不允许内部有重复的值,如果有只显示一个,相当于去重。虽然Set很像数组,但是他不是数组。

Set值的增删查

追加add:

let serArr = new Set(['judy','wayne','hello','judy'])
serArr.add('web');//追加

查找has 返回 true false:

let serArr = new Set(['judy','wayne','hello','judy'])
console.log(serArr.has('judy')); //true
console.log(serArr.has('judy1'));//false

删除 delete:

let serArr = new Set(['judy','wayne','hello','judy'])
let serArr = new Set(['judy','wayne','hello','judy'])
console.log(serArr.delete('judy'));//true
console.log(serArr);//Set(2) {"wayne", "hello"}

删除 clear:

let serArr = new Set(['judy','wayne','hello','judy']);
serArr.clear(); //删除所有的东西
console.log(serArr) ;//Set(0) {}

Set 循环:

for...of 循环

for(let item of serArr){
    console.log(item); //judy wayne hello
}

forEach循环

let serArr = new Set(['judy','wayne','hello','judy']);
serArr.forEach((value)=>console.log(value)); //judy wayne hello
翻译成es5的写法
 serArr.forEach(function (value) {
 return console.log(value);
 });

size属性

let serArr = new Set(['judy','wayne','hello','judy']);
serArr.forEach((value)=>console.log(value));
console.log(serArr.size); //3

猜你喜欢

转载自blog.csdn.net/weixin_39100915/article/details/80907293
今日推荐