后台获取的数据如下,是一个时间段内的所有数据

由于需求是让这些数据能够可视化,显示每一天变化情况,那么就需要将每一个的值都加到一起

解析过程

let resultData = []let resultDataId = []for (let i in result) {    for(let j in result[i].usedAppliances){        if(resultDataId.indexOf(result[i].usedAppliances[j].kindId) == -1){            resultData.push(result[i].usedAppliances[j])            resultDataId.push(result[i].usedAppliances[j].kindId)        }else{            let index = resultDataId.indexOf(result[i].usedAppliances[j].kindId)            for(let z in resultData[index].data){                resultData[index].data[z].price += ',' + result[i].usedAppliances[j].data[z].price            }        }    }}  

方法说明

  • 新建两个数组
resultData存放具体数据

resultDataId存放kindId

  • 循环数组
先判断数据的kindId是否已经存到resultDataId

若不存在:将数据及kindId分别存入resultData、resultDataId

若存在:将字段值添加到相应位置

解析完成

完成啦,将几天内的price的值都添加到了一起