// 加载表格数据
initTableData(): void {
const data = [
{
"indicatrixId": 1,
"indicatrixName": "水田",
"items": [
{
"key": "大湾镇",
"value": 80
},
{
"key": "大湾2镇",
"value": 20
}
]
},
{
"indicatrixId": 2,
"indicatrixName": "旱地",
"items": [
{
"key": "香港镇",
"value": 80
},
{
"key": "大湾2镇",
"value": 10
}
]
}
]
const result: any = {}
// 这一步是找到对应的镇
data .forEach((item: any) => {
const { items } = item;
items.forEach((elm: any) => {
if (!result[elm.key]) {
result[elm.key] = []
}
})
})
console.log(result)
// 循环数值,然后赋值key:[80,10,20,....],
data .forEach((item:any)=>{
const { items } = item;
// 循环obj的key
Object.keys(result).forEach(key => {
const currentItem = items.find((elm:any) => elm.key === key)
result[key].push(currentItem ? currentItem.value : 0)
})
})
// 把对象组成二维数值
const returnValue: any = []
Object.keys(result).forEach(key => {
returnValue.push([
key,
...result[key]
])
})
console.log(returnValue)
}
![](https://img.haomeiwen.com/i14756798/1c3d0fb6eced84e4.png)
514fb98334968ccf7b21624f7c1b063.png
网友评论