如何从JavaScript中的JSON key:value对获取数据

时间:2019-02-13 11:04:41

标签: javascript arrays json parameter-passing marklogic

我有以下格式的JSON文档:

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

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

我正在用MarkLogic编写这篇文章,所以有人可以帮助我吗?

1 个答案:

答案 0 :(得分:-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' />