Показать сообщение отдельно
  #4 (permalink)  
Старый 01.05.2023, 16:56
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,129

Aidec,
<body>
    <pre>
<script>
const Mas1 =[{name: "Anton", age: "20"}, {name: "Artem", age: "23"}, {name: "Rafik", age: "32"}, {name: "Andrey", age: "30"}];
const Mas2 =[{name: "Anton", status: "Yes"}, {name: "Artem", status: "Yes"}, {name: "Rafik", status: "No"}];

const createArr = (...arg) => {
  const objName = {};
  return arg.flat().reduce((ar, el)=>
    {
      let name = el.name;
      let obj = objName[name];
      if(!obj) ar.push(objName[name] = {...el});
      else Object.assign(obj, el);
      return ar;
    }, []
  )
};
const Mas3 = createArr(Mas1, Mas2);
document.body.append(JSON.stringify(Mas3))
</script></pre>
</body>

Последний раз редактировалось рони, 01.05.2023 в 20:55. Причина: [].concat(...arg) заменил arg.flat()
Ответить с цитированием