通过 set 和 map 实现对象数组去重

  • 根据所有属性去重
// 方法一
const map = new Map()
arr.filter( item => !map.has(JSON.stringify(item)) && map.set(JSON.stringify(item), 1)
 
// 方法二
[...new Set(arr.map(e => JSON.stringify(e)))].map(e => JSON.parse(e)]
  • 根据对象中某个属性去重 
// key 是某个属性
const map = new Map()
return arr.filter((item) => !map.has(item[key] + '') && map.set(item[key] + '', 1))

 

posted @ 2022-07-26 11:34  土小狗  阅读(168)  评论(0编辑  收藏  举报