收藏
回答

数据数数组如何重新组合?

如果我有一个数据如何:

child:[ {nameB:B1,image:M1},{nameB:B1,image:M2},{nameB:B2,image:M1},{nameB:B1,image:M4} ,{nameB:B2,image:M2} ]



如何可发生成:

child:[ {nameB:B1,image: [ M1,M2,M4 ] } ,{nameB:B2,image:[ M1,M2]} ]


请指教!!!!!!




回答关注问题邀请回答
收藏

1 个回答

  • binnie smile
    binnie smile
    02-20
    let arr = [
      { nameB: "B1", image: "M1" },
      { nameB: "B1", image: "M2" },
      { nameB: "B2", image: "M1" },
      { nameB: "B1", image: "M4" },
      { nameB: "B2", image: "M2" }
    ]
    
    
    const map = new Map();
    arr.forEach(item => {
      let val = map.get(item.nameB);
      if (val) {
        let images = [...val];
        images.push(item.image);
        map.set(item.nameB, images)
      } else {
        map.set(item.nameB, [item.image])
      }
    })
    console.log(map);
    
    02-20
    有用
    回复 8
    查看更多(3)
登录 后发表内容
问题标签