Set对象

Set对象是值的合集(collection)。集合(set)中的元素只会出现一次,即集合中的元素是唯一的。你可以按照插入顺序迭代集合中的元素。插入顺序对应于 add() 方法成功将每一个元素插入到集合中(即,调用 add() 方法时集合中不存在相同的元素)的顺序。

Set对象常用方法

1、add() 集合内添加元素

const set=new Set()        
console.log(set.add('a')) //{'a'}        
console.log(set.add('b')) //{'a','b'}        
console.log(set.add('b')) //{'a','b'}        
console.log(set.add('c')) //{'a','b','c'}

2、forEach() 遍历集合 

set.forEach(item=>{
    console.log(item)
})

3、size 集合长度

console.log(set.size)  // 3

4、has 判断集合是否含有某个元素

console.log(set.has('b'))  // true
console.log(set.has('d'))  // false

5、把集合转为数组

console.log(Array.from(set))  // ["a", "b", "c"]
console.log(set)              // {"a", "b", "c"}
console.log([...set])         // ["a", "b", "c"]

6、delete 移除一个元素 并返回一个布尔值表示是否移除成功

console.log(set.delete('a')) // true
console.log(set.delete('d')) // false
console.log(set)  // {"b", "c"}

7、clear 移除所有元素

set.clear() 
console.log(set.size) // 0

实现数组去重

方法一:利用Set集合

const arr=[1,2,3,2,4,3,6,5,4]
const newArr=[...new Set(arr)]
console.log(newArr) // [1,2,3,4,5,6]

方法二

const arr=[1,2,3,2,4,3,6,5,4]
const newArr2=[]
arr.forEach(item=>{
    if(newArr2.indexOf(item)===-1){
         newArr2.push(item)
    }
})
console.log(newArr2)

你可能感兴趣的:(前端,javascript,vue.js)