这似乎是一个基本问题,但是我是编码的新手,我只是找不到答案。 (我已经多次搜索和搜索StackOverflow。)
这是一个JSON对象:
const json = {
"catalog:aardvark": {
"severity": "minor"
},
"catalog:baboon": {
"severity": "minor",
"testDependency": "dashboard:echidna"
},
"catalog:capybara": {
"severity": "minor",
"testDependency": "dashboard:ferret"
},
"dashboard:dingo": {
"severity": "minor"
},
"dashboard:echidna": {
"severity": "minor"
},
"dashboard:ferret": {
"severity": "minor"
}
}
使用香草JavaScript或ES6或Node模块,我需要返回键"catalog:capybara"
,但我只能使用键"testDependency"
和/或值"dashboard:ferret"
。出于这些目的,其余所有都不为人知。
我尝试了许多尝试都无济于事,我将为您提供失败的详细信息。再次,这似乎应该很简单。非常感谢您的帮助!
PS:不要为许多键和值包含字符:
答案 0 :(得分:2)
您可以获取对象的键并找到嵌套的对象,然后返回键。
beta:=0.5
答案 1 :(得分:0)
您可以像这样将JSON映射到键/值数组:
const array = Object.keys(json).map((key) => {
return {key: key, value: json[key] };
});
然后您可以过滤键/值:
const filtered = array.filter((obj) => {
return obj.key === "catalog:capybara" || obj.value.testDependency === "dashboard:ferret";
});