How can you merge objects in array of objects?

前端 未结 12 1244
小蘑菇
小蘑菇 2020-12-06 17:32

I\'m looking for the best solution to merge all objects in one array

const arrayOfObjects = [
 {name: \'Fred\', surname: \'Shultz\'}, {name: \'Anne\', surnam         


        
12条回答
  •  無奈伤痛
    2020-12-06 17:58

    Short way with array reduce:

    const arrayOfObjects = [
     {name: "name1", surname: "surname1"}, {name: 'Anne', surname: 'Example'}, {name: 'name3', surname: 'Example3'}
    ];
    /*
    {name: ['Fred', 'Anne'], surname: ['Example', 'Shultz']}
    */
    var result = arrayOfObjects.reduce((obj,current)=>{
        (obj['name'] = obj['name']||[]).push(current.name);
        (obj['surname'] = obj['surname']||[]).push(current.surname);
        return obj;
    },{});
    console.log(result);

提交回复
热议问题