2

我有一个带有嵌套 JSON 对象路径的字符串:

var path = 'p_Data[0]["BusinessUnit"][0]["BusinessUnit"]' 

如何评估该路径中的 JSON?现在我用

eval(path)

我知道使用 eval 不好。如何在不使用 eval 的情况下做到这一点?

4

1 回答 1

1

您可以使用 DefiantJS ( http://defiantjs.com ),它使用“搜索”方法扩展全局对象 JSON。使用此方法,您可以使用 XPath 表达式搜索 JSON 结构,如下所示:

JSON.search( data, '//p_Data[0]/BusinessUnit[0]/BusinessUnit' );

由于没有示例 JSON 结构,因此上述建议可能有效。如果您发布结构示例,我可以提供我的建议的 JSFiddle 版本。

要了解 XPath 的工作原理,请查看此 XPath Evaluator 工具:
http ://defiantjs.com/#xpath_evaluator

于 2014-01-14T13:20:07.403 回答