您的位置:首页 > Web前端 > JavaScript

js数组元素为基本类型和对象的去重

2021-08-20 18:28 676 查看

常见的数组去重主要有俩方面:

  1. 由基本类型组成的数组去重
  2. 由对象组成的数组根据对象某个属性去重

基本类型去重:

export function unique(array) {
const arr = []
const contain = {}
array.forEach(item => {
if (!contain.hasOwnProperty(item)) {
arr.push(item)
contain[item] = true
}
})
return arr
}

 效果:

 

根据对象属性去重:

/**
*
* @param {Array} array
* @param {string} key ,对象属性名
* @returns {Array}
*/
export function uniqueByAttr(array, key) {
const hash = {};
const arr = array.reduce((preVal, curVal) => {
hash[curVal[key]]
? ""
: (hash[curVal[key]] = true && preVal.push(curVal));
return preVal;
}, []);
return arr;
}

效果:

 

 

脚踏实地行,海阔天空飞

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: