【发布时间】:2021-12-06 14:08:00
【问题描述】:
我有以下代码返回是否在数组对象中找到键和值。
function iterate(array, prop, val) {
Object.keys(array).forEach((key) => {
if (key === prop && val === array[key]) {
console.log(`key: ${key}, value: ${array[key]}`);
}
if (typeof array[key] === 'object') {
iterate(array[key], prop, val);
}
});
}
没关系,但现在我想访问找到这些属性和值的特定对象的全部内容。这是我的 JSON:
[
{
"page":"main",
"content":[
{
"type":"item",
"item":[
{
"name":"HAMMER",
"price":"1000"
},
{
"name":"SWORD",
"price":"2000"
}
]
}
]
}
]
这就是我用我的功能寻找/得到的东西:
"name":"HAMMER"
这就是我需要的:
{
"name":"HAMMER",
"price":"1000"
},
有什么方法可以实现,还是我从错误的角度解决了这个问题?
【问题讨论】:
-
而不是记录找到的键/值,
return array;(顺便说一句,这不是数组) -
这是有效的,它是一个对象,对吧?不是数组。谢谢!
-
@ChrisG 实际上不会从
iterate返回任何东西 -
@VLAZ 对,我应该看看实际代码;)
标签: javascript arrays arraylist