Javascript 尝试将来自API的两个不同数组映射到对象
我这里的数据来自后端APIJavascript 尝试将来自API的两个不同数组映射到对象,javascript,reactjs,Javascript,Reactjs,我这里的数据来自后端API usage_hours: { devices: ["350kVA GEN", "EKEDC", "85kVA GEN"], hours: [405.946, 646.132, 0] } 我想把它转换成这个特定的数据,这样我就可以在我的react应用程序中渲染它 usage_hours: [ { "device_name": "350kVA GEN"
usage_hours: {
devices: ["350kVA GEN", "EKEDC", "85kVA GEN"],
hours: [405.946, 646.132, 0]
}
我想把它转换成这个特定的数据,这样我就可以在我的react应用程序中渲染它
usage_hours: [
{
"device_name": "350kVA GEN",
"hours": 405.946
},
{
"device_name": "EKEDC",
"hours": 646.132
},
{
"device_name": "85Kva",
"hours": 0
}
]
请问我能用什么方法做这件事?。一个让我接近的解决方案是:
usage_hours.hours.map((element)=>{
let item = Object.fromEntries(
data.usage_hours.devices.map((el, index) => [el, element])
);
newData.push(item);
})
您可以这样做:
let usage\u hours={
设备:[“350kVA发电机”、“EKEDC”、“85kVA发电机”],
小时:[405.946646.132,0]
}
让result=Object.entries(usage_hours)[0][1].map((项,索引)=>({device_name:item,hours:usage_hours.hours[index]}));
log('Result:',Result)代码>希望对您有所帮助
let usage\u hours={
设备:[“350kVA发电机”、“EKEDC”、“85kVA发电机”],
小时:[405.946646.132,0]
}
设arr=[];
for(让对象项的[键,值](使用时间)){
key=key==“设备”?“设备名称”:key;
对于(设i=0;i 控制台日志(arr)代码>这是否回答了您的问题?哇,太谢谢你了。我已经试着修复这个错误将近一个星期了。非常感谢,欢迎光临。考虑一下我的回答,如果它对你有帮助的话。