js set

1.创建实例

let setObj = new Set()

2.去重

set实例没有重复的值

let arr =[1, 2, 2, 3, 4, 5, 5]
let setObj = new Set(arr)
console.log(setObj) //{1, 2, 3, 4, 5}
let arr2 = [...setObj]
//let arr2 = Array.from(setObj)
console.log( arr2) //[1,2,3,4,5]

3.元素个数size

let arr =[1, 2, 2, 3, 4, 5, 5]
let setObj = new Set(arr)
console.log(setObj.size) //5

4.添加add()

let arr =[1, 2, 2, 3, 4, 5, 5]
let setObj = new Set(arr).add(6)
console.log(setObj) //{1, 2, 3, 4, 5, 6}

4.删除delete()

let arr = [1, 2, 2, 3, 4, 5, 5]
let setObj = new Set(arr)
let delok1 = setObj.delete(5)//是否删除成功
console.log(delok1, setObj)//true {1, 2, 3, 4}
console.log(delok2, setObj)//false {1, 2, 3, 4}

5.查看has()

let arr = [1, 2, 2, 3, 4, 5, 5]
let setObj = new Set(arr)
let hasok1 = setObj.has(1)
let hasok2 = setObj.has(7)
console.log(hasok1,hasok2)//true false

6.清空clear()

let arr = [1, 2, 2, 3, 4, 5, 5]
let setObj = new Set(arr)
let clearObj = setObj.clear()
console.log(clearObj)//undefined

7.forEach和for-of方法

let arr = [1, 2, 2, 3, 4, 5, 5]
let setObj = new Set(arr)
setObj.forEach(item => {
	console.log(item)
})
for (const item of setObj) {
	console.log(item );
}

8.并集、交集、差集

let arr1 = new Set([1, 2, 3]);
let arr2 = new Set([4, 3, 2]);
let union = new Set([...arr1, ...arr2]);
let intersect = new Set([...arr1].filter(x => arr2.has(x)));
let difference = new Set([...arr1].filter(x => !arr2.has(x)));
console.log('并集', union)//并集 Set(4) {1, 2, 3, 4}
console.log('交集', intersect)//交集 Set(2) {2, 3}
console.log('差集', difference)//差集 Set(1) {1}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值