Я использую Liferay 6.2 и имеет JSONObject содержащего следующее:Как извлечь вложенные элементы JSON в Liferay
{
"foo":{
"bar":{
"baz":["42","23"]
}
}
}
У меня есть строка, содержащая путь/селектор/whatsitcalled указывая где-то в этом JSONObject: foo.bar.baz[0]
Как мне получить соответствующее значение из JSONObject, то есть «42»?
Все методы, которые я мог найти, касались только следующего уровня, ничто, кажется, не охватывает вложенность. Я могу разобрать путь вручную, но нет ли более простого способа?
Я знаю, что 'eval' является злом. Тем не менее, как насчет: 'eval ('myObjectName.' + Selector)' с 'selector = 'foo.bar.baz [0]';'? –
Я работаю с Java, а не с Javascript, поэтому 'eval' не вариант. (И использование ScriptEngine для выполнения JS просто похоже на плохую идею ...) – icke