jQuery和JSON:按名称获取元素

时间:2010-02-10 22:01:43

标签: jquery json traversal getelementsbyname

我有以下JSON:

  

var json = {       “system”:{           “世界”:{               “行动”:{                   “你好” : {                       “src”:“hello world / hello world.js”,                       “命令”:“你好世界”                   }               }           }       }   }

我有以下javascript:

  

var x =“system”;
  //通过执行类似json.getElementByName(x)

的操作来获取系统的内容

如何在jQuery中使用jsonx获取系统内容?

3 个答案:

答案 0 :(得分:10)

只需使用:

var x = "system";
json[x];

它是一个key/value检索系统,不需要函数调用就可以使用它。

答案 1 :(得分:4)

据我所知,jQuery不会像那样导航任意对象 - 只是DOM。您可以编写一些函数来执行此操作:

function findSomething(object, name) {
  if (name in object) return object[name];
  for (key in object) {
    if ((typeof (object[key])) == 'object') {
      var t = findSomething(object[key], name);
      if (t) return t;
    }
  }
  return null;
}

很明显,我没有通过精心设计的质量保证流程来实现这一功能。

答案 2 :(得分:1)

尝试使用JSON Path,就像XPath表达式一样。