qq_54571754 2022-10-12 18:47 采纳率: 33.3%
浏览 58
已结题

前端数据处理问题。后台返回不符合要求

原数据格式:[
{
prodName : "产品1",
faultName : "类别1",
quantity : 3
},
{

                    prodName : "产品1",
                    faultName : "类别2",
                    quantity : 23
                },
                {
                    
                    prodName : "产品2",
                    faultName : "类别2",
                    quantity : 11
                },
                {
                    
                    prodName : "产品3",
                    faultName : "类别3",
                    quantity : 13
                },
                {
                    
                    prodName : "产品4",
                    faultName : "类别1",
                    quantity : 20
                },
            ]

期望:[
{
name:'类别1',
data:[3,0,0,20]
},
{
name:'类别2',
data:[23,11,0,0]
},
{
name:'类别3',
data:[0,0,13,0]
}
]
prodName与faultName有多少未知

  • 写回答

1条回答 默认 最新

  • Baker-Chen 全栈领域优质创作者 2022-10-12 19:13
    关注

    定义一个处理函数:

    const fn = (arr) => {
        const newArr = [];
        arr.forEach((item) => {
            const newArrItem = newArr.find((n) => n.name === item.faultName);
            // console.log(newArrItem);
            if (!newArrItem) {
                newArr.push({
                    name: item.faultName,
                    data: [item.quantity],
                });
            } else {
                // console.log(newArr.find((n) => n.name === item.faultName));
                newArrItem.data.push(item.quantity);
                // console.log("存在");
            }
        });
        return newArr;
    };
    

    将原数据作为参数调用fn函数,fn的返回值就是你需要的数据格式

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 10月20日
  • 修改了问题 10月12日
  • 创建了问题 10月12日

悬赏问题

  • ¥15 angular项目错误
  • ¥20 需要帮我远程操控一下,运行一下我的那个代码,我觉得我无能为力了
  • ¥20 有偿:在ubuntu上安装arduino以及其常用库文件。
  • ¥15 请问用arcgis处理一些数据和图形,通常里面有一个根据点划泰森多边形的命令,直接划的弊端是只能执行一个完整的边界,但是我们有时候会用到需要在有很多边界内利用点来执行划泰森多边形的命令
  • ¥30 在wave2foam中执行setWaveField时遇到了如下的浮点异常问题,请问该如何解决呢?
  • ¥750 关于一道数论方面的问题,求解答!(关键词-数学方法)
  • ¥200 csgo2的viewmatrix值是否还有别的获取方式
  • ¥15 Stable Diffusion,用Ebsynth utility在视频选帧图重绘,第一步报错,蒙版和帧图没法生成,怎么处理啊
  • ¥15 请把下列每一行代码完整地读懂并注释出来
  • ¥15 寻找公式识别开发,自动识别整页文档、图像公式的软件