如何从JSON key中获取数据:JavaScript中的值对[重复]

问题描述 投票:0回答:1

这个问题在这里已有答案:

我有一个以下格式的JSON文档:

{
  "X": [
    {
      "a": "foo",
      "b": "bar"
    },
    {
      "a": "xyz",
      "b": "cvb"
    }
  ]
}

我需要在我的JS代码中传递这个JSON对象,然后当我传递“a”的值时需要获取值“b”。示例:如果我传递“foo”,我希望输出为“bar”,依此类推。

我在MarkLogic上写这篇文章所以任何能帮助我的人都可以这样做吗?

javascript arrays json parameter-passing marklogic
1个回答
-1
投票

我想你可以这样做。

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' />
© www.soinside.com 2019 - 2024. All rights reserved.