js 数组 删掉某一指定元素

小丑的帽子
  • 101
let arr = [ 
        {   
            id: 1,
            name: '张三'
        },
        {
            id: 1,
            name: '李四'
        },
        {
            id: 2,
            name: '王五'
        },
]

当有相同的id时,删掉其中一个,最终得到数组如下

let arr = [ 
        {   
            id: 1,
            name: '张三'
        },
        {
            id: 2,
            name: '王五'
        },
]
回复
阅读 1.3k
2 个回答

已解决

var arr1=arr.filter(function(element,index,self){
  return self.findIndex(el=>el.id==element.id)===index
})
console.log('arr1::', arr1)
let _arr = arr.reduce((arr,v) => {
    !arr.some(e => e.id === v.id)&&arr.push(v)
    return arr
},[]);
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏