vue数组去重
最近在开发中遇到了需要对数组进行去重操作,在这里记录一下基本的去重方法
数组去重
对于简单的数组进行去重,可以使用Set集合,基本上可以对所有数据类型进行去重
test() {
const arr = [true, 1, 'str', 's', 2, false, true, {}, [], function() {}, {}, [1], [2], { obj: 1 }, 2, 'str']
const qc = [...new Set(arr)]
console.log('qc')
console.log(qc)
}
控制台打印结果
对象数组去重
对象数组去重,可以使用Map集合,通过对象内的某个属性进行去重
test() {
const arr = [
{
name: '张三',
age: 22
},
{
name: '李四',
age: 22
},
{
name: '张三',
age: 23
}
]
const map = new Map()
const qc = arr.filter(key => !map.has(key.name) && map.set(key.name, 1)) // 这里对name属性进行去重
console.log('qc')
console.log(qc)
}
控制台打印
上面就是两种数组去重的基本操作了,仅代表个人观点