Javascript 如何将数组作为值的对象转换为对象数组

Javascript 如何将数组作为值的对象转换为对象数组,javascript,Javascript,我有一个这样的对象: { Health_id: [1, 2, 3], Epoch_Time: [16012,16013,16014], Disk_Free: ['86.2', '86.2','86.2'], Memory_Free: ['1555', '1552','1565'], CPU_Usage_Percent: ['6.7', '3.0', '2.7'], CPU_Time: ['24744.89','24749.60','24753.81

我有一个这样的对象:

{
    Health_id: [1, 2, 3],
    Epoch_Time: [16012,16013,16014],
    Disk_Free: ['86.2', '86.2','86.2'],
    Memory_Free: ['1555', '1552','1565'],
    CPU_Usage_Percent: ['6.7', '3.0', '2.7'],
    CPU_Time: ['24744.89','24749.60','24753.81']
}
我需要将其转换为如下对象数组:

[
    {'Health_id':1,'Epoch_Time':'16012','Disk_Free':'86.2','Memory_Free':'1555','CPU_Usage_Percent':'6.7','CPU_Time':'24744.89'}, 
    {'Health_id':2,'Epoch_Time':'16013','Disk_Free':'86.2','Memory_Free':'1552','CPU_Usage_Percent''3.0','CPU_Time':'24749.60'}, 
    {'Health_id':3,'Epoch_Time':'16014','Disk_Free':'86.2','Memory_Free':'1565','CPU_Usage_Percent': '2.7','CPU_Time':'24753.81'},
]

我希望所有的内部数组都有相同数量的元素。你可以这样试试-

const数据={
健康标识:[1,2,3],
大纪元时间:[160121601316014],
无磁盘:['86.2'、'86.2'、'86.2'],
内存可用:['1555','1552','1565'],
CPU使用率百分比:['6.7','3.0','2.7'],
CPU_时间:['24744.89','24749.60','24753.81']
};
常数res=[];
常量键=对象键(数据);
for(设i=0,l=data.Health_id.length;iobj[key]=data[key][i]);
res.push(obj);
}
控制台日志(res)

.as console wrapper{min height:100%!important;top:0}
我希望所有内部数组都有相同数量的元素。你可以这样试试-

const数据={
健康标识:[1,2,3],
大纪元时间:[160121601316014],
无磁盘:['86.2'、'86.2'、'86.2'],
内存可用:['1555','1552','1565'],
CPU使用率百分比:['6.7','3.0','2.7'],
CPU_时间:['24744.89','24749.60','24753.81']
};
常数res=[];
常量键=对象键(数据);
for(设i=0,l=data.Health_id.length;iobj[key]=data[key][i]);
res.push(obj);
}
控制台日志(res)

.as控制台包装{min height:100%!important;top:0}
简单朴素的解决方案供您参考

const convert=(旧版)=>{
const nRecords=old.Health\u id.length;
常量数据=[];
for(让索引=0;索引控制台日志(数据)简单朴素的解决方案供您参考

const convert=(旧版)=>{
const nRecords=old.Health\u id.length;
常量数据=[];
for(让索引=0;索引控制台日志(数据)使用一个简单的
for循环
和只需创建新对象的方法

const数据={
健康标识:[1,2,3],
大纪元时间:[160121601316014],
无磁盘:['86.2'、'86.2'、'86.2'],
内存可用:['1555','1552','1565'],
CPU使用率百分比:['6.7','3.0','2.7'],
CPU_时间:['24744.89','24749.60','24753.81']
};
常量大小=对象。值(数据)[0]。长度;
常量键=对象键(数据);
常量结果=[];
for(设i=0;i{
acc[键]=数据[键][i];
返回acc;
}, {})
结果:推送(选项);
}
控制台日志(结果)

.as-console-wrapper{min-height:100%!important;top:0}
使用一个简单的
for-loop
方法,您只需创建新对象即可

const数据={
健康标识:[1,2,3],
大纪元时间:[160121601316014],
无磁盘:['86.2'、'86.2'、'86.2'],
内存可用:['1555','1552','1565'],
CPU使用率百分比:['6.7','3.0','2.7'],
CPU_时间:['24744.89','24749.60','24753.81']
};
常量大小=对象。值(数据)[0]。长度;
常量键=对象键(数据);
常量结果=[];
for(设i=0;i{
acc[键]=数据[键][i];
返回acc;
}, {})
结果:推送(选项);
}
控制台日志(结果)
。作为控制台包装{最小高度:100%!重要;顶部:0}