- 简单数组去重
idList = [...new Set(idList)]
- 对象数组根据某个元素去重
idList = [...new Set(idList.map(item => item.xxx))]
- 对比数组,取出不同元素成新数组
let arr1 = [4,6,7], arr2 = [5,6,7]
let newArr = arrA .concat(arrB ).filter((cur, i, arr) => {
return arr.indexOf(cur) === arr.lastIndexOf(cur);
})
- 对比数组, 计算数组中拥有某个相同属性的元素个数 (如age)
let originList = [
{age:15,name:'张三'},
{age:15,name:'李四'},
{age:14,name:'赵五'}
]
let newArr = [...new Set(originList .map(item => item.age))]
console.log(newArr, 'newArr')
let cateList = []
let countList = []
newArr.map(i => {
cateList .push(originList .filter(t => t.age=== i))
})
cateList .map((i, index) => {
countList.push({
age: newArr[index],
num: i.length,
})
})
console.log(cateList , 'cateList ')
console.log(countList, 'countList')