举个例子:

let data = [  {name:'aaa', id:'1', color:'blue'},  {name:'aaa', id:'2', color:'green'}];let temp = [];data.forEach(x => {  let index = temp.findIndex(y => y.name == x.name);  if (index == -1) {    temp.push({      name: x.name,      list:[{        id: x.id,        color:x.color      }]    })  } else {    temp[index].list.push({      id: x.id,      color:x.color    })  }})

后果:

[  name: 'aaa',  list: [    {id:'1', color:'blue'},    {id:'2', color:'green'}  ]]