- API不同
- Set元素不能重复
- Set是无序结构,操作很快
const s = new Set([10, 20, 30, 40])
s.add(50)
s.delete(10)
s.has(20)
s.size
s.forEach(val => console.log(val))
[...new Set(array)]
[...new Set('ababbc')].join('')
const targetArr = []
const targetSet = new Set()
for (let i = 0; i < 10000000; i++) {
targetArr.push(i)
targetSet.add(i)
}
console.time('targetArr unshift')
targetArr.unshift('a')
console.timeEnd('targetArr unshift')
console.time('targetArr push')
targetArr.push('b')
console.timeEnd('targetArr push')
console.time('targetArr find')
targetArr.includes(5000000)
console.timeEnd('targetArr find')
console.time('targetSet add')
targetSet.add('a')
console.timeEnd('targetSet add')
console.time('targetSet find')
targetSet.has(5000000)
console.timeEnd('targetSet find')