注意这里不是数据类型,而是数据结构。它是ES6中新的东西,并且很有用处。Set的数据结构是以数组的形式构建的。
Set声明(不允许重复的值存在)
let setArr = new Set(['leiy','ly','gs','dx'])
console.log(setArr);
打印结果:
Set { 'leiy', 'ly', 'gs', 'dx' }
Set值的增删查
追加add:
在使用Array的时候,可以用push进行追加值,那Set稍有不同,它用更语义化的add进行追加。
let setArr = new Set(['leiy','ly','gs','dx'])
setArr.add('web')
console.log(setArr);
打印结果:
Set { 'leiy', 'ly', 'gs', 'dx', 'web' }
查找has:
let setArr = new Set(['leiy','ly','gs','dx'])
setArr.add('web')
console.log(setArr.has('ly'));
console.log(setArr.has('v'));
打印结果:
true
false
删除delete:
let setArr = new Set(['leiy','ly','gs','dx'])
setArr.delete('gs')
console.log(setArr);
setArr.clear()
console.log(setArr);
打印结果:
Set { 'leiy', 'ly', 'dx' }
Set {}
set的循环
for…of…循环:
let setArr = new Set(['leiy','ly','gs','dx'])
for(let i of setArr ){
console.log(i);
}
打印结果:
leiy
ly
gs
dx
forEach循环
setArr.forEach((val,index)=>console.log(val))
size属性
size属性可以获得Set值的数量。
let setArr = new Set(['leiy','ly','gs','dx'])
console.log(setArr.size);
打印结果:
4