Array合并

from

[
    {
        name: 'Lee',        class: '002',        number: 1
    },
    {
        name: 'Lee',        class: '003',        number: 3
    },
    {
        name: 'Karina',        class: '001',        number: 2
    }
]

to

[
    {
        name: 'Lee',
        info: [
            {                class: '001',                number: 1
            },
            {                class: '003',                number: 3
            }
        ]
    },
    {
        name: 'Karina',
        info: [
            {                class: '001',                number: 2
            }
        ]
    }
]

怎么实现?


扬帆大鱼
浏览 754回答 1
1回答

叮当猫咪

亲测可以,只要给的数据按姓名排好            var emm=[];var k=0;var msl = oarr[0].name;             $.each(oarr,function(i,j){                if(i){                    if(msl!=j.name) k++;                 }                  if(!emm[k]){                     emm[k]={};                                      }                                  emm[k]['name']=j.name;                if(!emm[k]['info']) {                     emm[k]['info']=[];                 }                delete j.name;                 emm[k]['info'].push(j);                              })                 console.log(emm)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript