JS对象数组去重

1.使用filter和Map

function uniqueFunc(arr, uniId){
  const res = new Map();
  return arr.filter((item) => !res.has(item[uniId]) && res.set(item[uniId], 1));
}

 

2.使用reduce

function uniqueFunc2(arr, uniId){
  let hash = {}
  return arr.reduce((accum,item) => {
    hash[item[uniId]] ? '' : hash[item[uniId]] = true && accum.push(item)
    return accum
  },[])
}

 

posted on 2022-07-20 10:55  H...ong  阅读(362)  评论(0)    收藏  举报

导航