Тема: reduce створення масива по обєктам

Доброго часу суток в мене є два масива і мені треба зробити з нього один щоб ід редюсером   співпадали вот що в мене вийшло

const grop = [
    { name: 'merseded', groupName: 'avto', idParent: '11' }, 
    {name: 'bmv', groupName: 'avto', idParent: '20' } 
   ] 
const city = [{name: 'test1', idMain: '11'},
              {name: 'test2', idMain: '11'}, 
              {name: 'test3', idMain: '20'},
              {name: 'test4', idMain: '11'}]

const resalt = [...grop, ...city]
console.log(resalt)
const resaltCity = resalt.reduce((acu, cur) => {
     const findSuperGroup = acu.find(el => el.groupName  == cur.groupName);

    
    if(findSuperGroup){
         return [...acu.filter(item => item.groupName !== null ), {...cur}]
       } else {
           
       }
        return [...acu, {...cur}];    
    
}, []);
console.log('resaltCity', resaltCity)
а треба щоб було так 

 const gropResalt = [
    name: 'merseded', groupName: 'avto', idParent: '11'
     {name: 'test', idMain: '11'},
     {name: 'test', idMain: '11'},
     {name: 'test', idMain: '11'},
     name: 'bmv', groupName: 'avto', idParent: '20',
      {name: 'test', idMain: '20'
 ]

2

Re: reduce створення масива по обєктам

У вас друга частина коду не повна, відредагуйте своє повідомлення, чи шо.

3

Re: reduce створення масива по обєктам

вирішення якщо комусь треба
const result = grop.reduce((acc, el) => acc.concat(el, city.filter((c) => c.idMain === el.idParent)), []);