从Json中获取关键值

时间:2015-07-21 18:16:43

标签: javascript jquery json

我有以下格式的Json对象

MyJsonObject= {
    'Animal': ['Lion', 'Tiger', 'Elephant'],
    'Human': ['Man', 'Woman']
};

如果我们将值传递给函数,我想将键作为返回类型。例如,如果我传递value = Man,则函数应返回Human作为返回类型。同样,如果我通过Tiger作为价值而不是我想让Animal作为返回值。

任何帮助将不胜感激

2 个答案:

答案 0 :(得分:1)

嗨,下面的代码片段应该可以工作。

你可以在这里试试http://jsfiddle.net/xtdqodzk/1/

NULL

答案 1 :(得分:1)

您可以尝试修改对象原型

Object.prototype.findKey = function(value) {
  for (var key in this) {
    if (this.hasOwnProperty(key)) {
      for (var i = 0; i < this[key].length; i++) {
        if (this[key][i] === value) {
          return key;
        }
      }
    }
  }
}

var MyJsonObject = {
    'Animal': ['Lion', 'Tiger', 'Elephant'],
    'Human': ['Man', 'Woman']
};

console.log(MyJsonObject.findKey('Man'));

这样做的好处是,如果你有另一个json对象,你可以在该对象上调用.findKey函数,因为所有对象都从Object.prototype对象继承函数和属性(原型继承)。