我在按请求正文的第一个键和最后一个键获取值时遇到问题。
这是我的请求正文:
{
"A": [
{
"filter": [
{"a": "a"}
]
},
{
"group": [
{"a": "a"}
]
}
],
"B": [
{
"filter": [
{"a": "a"}
]
},
{
"group": [
{"a": "a"}
]
}
], ...
}
如何获取值json键,因为它有很多json键,并且是json键的数组值。之后,我想从许多JSON键值中解析过滤器和组的值。
谢谢
答案 0 :(得分:0)
如果我理解正确,那么您正在寻找这样的东西:
Object.entries(json).reduce((acc, [key, value]) => {
acc.filter.push(...value[0].filter);
acc.group.push(...value[1].group);
return acc;
}, {filter: [], group: []})
根据您的编译器选项,这应该可以解决问题:
const res = Object.entries(json).reduce((acc, [key, value]) => {
acc.filter = acc.filter.concat(value[0].filter);
acc.group = acc.group.concat(value[1].group);
return acc;
}, {filter: <any>[], group: <any>[]});
这里是fiddle