I want to make this
const arr = [
    {
        "name": "mac"
    },
    {
        "group": "others",
        "name": "lenovo"
    },
    {
        "group": "others",
        "name": "samsung"
    }
]
into this:
 [
   {
     name: 'mac',
   },
   {
     name: 'others',
     group: [
       {
         name: 'lenovo',
       },
       {
         name: 'samsung',
       },
     ],
   }
 ]
I tried to use normal forEach loop but it didn't turn out well:
let final = []
const result = arr.forEach(o => {
    if(o.group) {
        group = []
        group.push({
            name: o.name
        })
        final.push(group)
    } else {
        final.push(o)
    }
});
Not sure if reduce might help? before I try lodash groupBy I want to use just pure js to try to make it.
 
     
    