由于某些原因 , 后端只能返回给我这种数据
但是我要渲染在页面上的是
就是说如果boardType和groupName两个属性相同的话 , count相加 , 然后再只保留一条 boardType和groupName两个属性相同的对象 , 可能是自己技术不够扎实 , 做起来还是有点难度的
解决方法:
let data = [] let index = -1 function findIndex(boardType, groupName, array) { for (var i = 0; i < array.length; i++) { if (array[i].boardType === boardType && array[i].groupName === groupName) { return i; } } return -1; } for (var i = 0; i < dataList.length; i++) { index = findIndex(dataList[i].boardType, dataList[i].groupName, data); if (index === -1) { data.push(dataList[i]); } else { data[index].count += dataList[i].count; } } //dataList: 拿到的原数据 //data: 经过处理后的数据 console.log(data)