在“NodeClassification”下方,每个对象中都有嵌套对象,其中有项目对象,我需要将其打破以形成对象数组。对象数组的结果如下所示,来自具有新键和现有值的结构。 下面附上需要在对象数组上的此结构中形成的栏。
JSON Object Structure:
"NodeClassification": {
"Mobile": {
"NORMAL": {
"DownCount": 2
},
"VIP": {
"DownCount": 2
}
},
"MobileRAN": {
"NORMAL": {
"DownCount": 4
},
"VIP": {
"DownCount": 4
},
"CRITICAL": {
"DownCount": 4
}
}
}
Result I need based on Array Of Object Structure:
[{
group: 'NORMAL',
key: 'Mobile',
value: 2
},
{
group: 'VIP',
key: 'Mobile',
value: 2
},
{
group: 'NORMAL',
key: 'MobileRAN',
value: 4
},
{
group: 'VIP',
key: 'MobileRAN',
value: 4
},
{
group: 'CRITICAL',
key: 'MobileRAN',
value: 4
}
]
迭代这些值,直到使用
map
方法到达第二个嵌套对象,然后使用 flat
方法展平嵌套数组。
const obj = {
"NodeClassification": {
"Mobile": {
"NORMAL": {
"DownCount": 2
},
"VIP": {
"DownCount": 2
}
},
"MobileRAN": {
"NORMAL": {
"DownCount": 4
},
"VIP": {
"DownCount": 4
},
"CRITICAL": {
"DownCount": 4
}
}
}
}
const items = Object.values(obj).map((n) => {
return Object.values(n)
}).flat()
console.log(items)