配列内のオブジェクトの重複排除と繰り返されるIDのデータ再構築

const data = [
            {
    
     id: 1, name: '张三', age: 15, },
            {
    
     id: 2, name: 'John', age: 18, },
            {
    
     id: 3, name: '李四', age: 18, },
            {
    
     id: 1, name: '张三', age: 15, },
            {
    
     id: 4, name: 'Jack', age: 18, },
            {
    
     id: 5, name: '王五', age: 10, },
            {
    
     id: 4, name: 'Jack', age: 18, },
            {
    
     id: 2, name: 'John', age: 18, },
        ];
 
let hash = {
    
    }; 
//如果hash:{curVal:{id:false}}就push data的这一项到新数组data2里,反之不push
const data2 = data.reduce((preVal, curVal) => {
    
    
    hash[curVal.id] ? '' : hash[curVal.id] = true && preVal.push(curVal); 
    return preVal 
}, [])

おすすめ

転載: blog.csdn.net/weixin_49295874/article/details/111701282
おすすめ