Javascript 将多个json对象转换为对象数组
我的数据当前以以下格式存储:Javascript 将多个json对象转换为对象数组,javascript,arrays,json,angular,typescript,Javascript,Arrays,Json,Angular,Typescript,我的数据当前以以下格式存储: { "Site1":{ "week":[ { "access":1 }, { "access":8 } ] }, "Site2":{ "week":[ { "access":16 } ] }, "Site3":{
{
"Site1":{
"week":[
{
"access":1
},
{
"access":8
}
]
},
"Site2":{
"week":[
{
"access":16
}
]
},
"Site3":{
"week":[
{
"access":2
},
{
"access":6
},
{
"access":2
}
]
}
}
我需要将其转换为以下格式:
[
{
"id":"Site1",
"access":[1,8]
},
{
"id":"Site2",
"access":[16]
},
{
"id":"Site3",
"access":[2,6,2]
}
]
如您所见,我还需要获取密钥站点名称,并将它们设置为id值
关于如何在JavaScript中使用angular v9实现这一点,有什么想法吗?我不太擅长重组那种类型的数据
常数数据={
地点1:{
周:[
{
访问:1,
},
{
访问:8,
},
],
},
地点2:{
周:[
{
访问:16,
},
],
},
地点3:{
周:[
{
访问:2,
},
{
访问:6,
},
{
访问:2,
},
],
},
};
const result=Object.keysdata.mapkey=>{
id:钥匙,
access:data[key].week.mapw=>w.access,
};
console.logresult;
常数数据={
地点1:{
周:[
{
访问:1,
},
{
访问:8,
},
],
},
地点2:{
周:[
{
访问:16,
},
],
},
地点3:{
周:[
{
访问:2,
},
{
访问:6,
},
{
访问:2,
},
],
},
};
const result=Object.keysdata.mapkey=>{
id:钥匙,
access:data[key].week.mapw=>w.access,
};
console.logresult 您只需使用此代码即可获得所需的结果
Object.keys(data).map(key => (
{
id: key,
access: data[key].week.map(obj => obj.access),
}
))
如果您遇到任何问题,请告诉我。您只需使用此代码即可获得所需的结果
Object.keys(data).map(key => (
{
id: key,
access: data[key].week.map(obj => obj.access),
}
))
如果您遇到任何问题,请告诉我。您可以先获取条目,然后映射它:
var数据={Site1:{week:[{access:1},{access:8}]},Site2:{week:[{access:16}]},Site3:{week:[{access:2},{access:6},{access:2}};
var result=Object.entriesdata.map[k,v]=>{id:k,access:v.week.mapp=>p.access};
console.logresult 您可以先获取条目,然后映射它:
var数据={Site1:{week:[{access:1},{access:8}]},Site2:{week:[{access:16}]},Site3:{week:[{access:2},{access:6},{access:2}};
var result=Object.entriesdata.map[k,v]=>{id:k,access:v.week.mapp=>p.access};
console.logresult;我真的很感谢你的帮助,非常感谢!这对梅起了作用真的很感谢你的帮助非常感谢!它对我有用