【发布时间】:2020-08-17 15:05:20
【问题描述】:
我有一个我正在寻找的价值。我想将我正在搜索的术语与key 的值相匹配,并返回与同一对象关联的name 键的值。
这是一个示例对象:
{
"test1": {
"functions": {
"function1": {
"inputs": [
{
"key": "key1",
"name": "name1"
},
{
"key": "key2",
"name": "name3"
},
{
"key": "key3",
"name": "name3"
}
]
},
"function2": {
"inputs": [
{
"key": "key4",
"name": "name4"
},
{
"key": "key5",
"name": "name5"
},
{
"key": "key6",
"name": "name6"
}
]
}
}
}
}
假设我想找到输入的name 和key 的key4。我将如何在 javascript 中实现这一点?
【问题讨论】:
-
欢迎来到 Stack Overflow!请使用tour(您将获得徽章!)并通读help center,尤其是How do I ask a good question? 您最好的选择是进行研究,search 以获取有关 SO 的相关主题,然后试一试. 如果您在进行更多研究和搜索后遇到困难并且无法摆脱困境,请发布您的尝试minimal reproducible example,并具体说明您遇到的问题。人们会很乐意提供帮助。
-
您可以使用
Object.keys()或更新的Object.entries()分别迭代对象键或键/值对。 (developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…) 请参阅in和Object.prototype.hasOwnProperty()之间的区别,以了解有关这一点的警告。对于数组,Array.prototype.filter()或Array.prototype.find()应该为您提供这部分内容。 (也与Object.keys()/Object.entries()结合使用。)
标签: javascript arrays object traversal