Ответ 1
var data = [{"ADAM":{"TEST":1}, "BOBBY":{"TEST":2}}],
x = "ADAM";
alert(data[0][x].TEST);
Я имею в виду, что я имею данные JSON как таковые:
[{"ADAM":{"TEST":1}, "BOBBY":{"TEST":2}}]
и я хочу сделать что-то вроде этого:
var x = "ADAM";
alert(data.x.TEST);
var data = [{"ADAM":{"TEST":1}, "BOBBY":{"TEST":2}}],
x = "ADAM";
alert(data[0][x].TEST);
Так как объекты в javascripts обрабатываются так же, как hashmaps (или ассоциативные массивы), вы можете просто делать данные ['adam']. ИСПЫТАТЬ точно так же, как вы могли бы делать data.adam.TEST. Если у вас есть индекс переменной, просто перейдите к нотации [].
var data = [{"ADAM":{"TEST":1}, "BOBBY":{"TEST":2}}]
alert(data[0].ADAM.TEST);
alert(data[0]['ADAM'].TEST)
если вы просто делаете
var data = {"ADAM":{"TEST":1}, "BOBBY":{"TEST":2}};
вы можете получить доступ к нему с помощью data.ADAM.TEST и данных ['ADAM']. TEST
Это не работает, поскольку вы устанавливаете x
как строковый объект, не получая доступ к значению из вашего массива:
alert(data[0]["ADAM"].TEST);