这个问题在这里已有答案:
我有一个以下格式的JSON文档:
{
"X": [
{
"a": "foo",
"b": "bar"
},
{
"a": "xyz",
"b": "cvb"
}
]
}
我需要在我的JS代码中传递这个JSON对象,然后当我传递“a”的值时需要获取值“b”。示例:如果我传递“foo”,我希望输出为“bar”,依此类推。
我在MarkLogic上写这篇文章所以任何能帮助我的人都可以这样做吗?
我想你可以这样做。
let obj = {
x : [{
"a":"foo",
"b":"bar"
},
{
"a":"xyz",
"b":"cvb"
}
]
}
passValue = (value) => {
obj.x.forEach(data => {
// iterate through the keys
Object.keys(data).forEach(key => {
// get the value for each key and look if required value has been matched
if(data[key] == value){
if(key == 'a'){
console.log(data['b']);
}else{
console.log(data['a']);
}
}
});
});
}
<input type='button' onclick='passValue("foo")' value='pass value foo' />
<input type='button' onclick='passValue("bar")' value='pass value bar' />
<input type='button' onclick='passValue("xyz")' value='pass value xyz' />
<input type='button' onclick='passValue("cvb")' value='pass value cvb' />