У меня есть очень простой массив JSON (сфокусируйтесь на объекте "points.bean.pointsBase"):
var mydata =
{"list":
[
{"points.bean.pointsBase":
[
{"time": 2000, "caption":"caption text", duration: 5000},
{"time": 6000, "caption":"caption text", duration: 3000}
]
}
]
};
// Usually we make smth like this to get the value:
var smth = mydata.list[0].points.bean.pointsBase[0].time;
alert(smth); // should display 2000
Но к сожалению, это ничего действительно не отображает.
Когда я изменяю "points.bean.pointsBase" на что-то без точек в, он - имя - все работает!
Однако я не могу изменить это имя ни на что больше без точек, но я должен получить значение?!
Там какие-либо опции состоят в том, чтобы получить его?
Вы хотите:
var smth = mydata.list[0]["points.bean.pointsBase"][0].time;
В JavaScript любое поле, к которому можно получить доступ с помощью. оператора, вы можете получить доступ с помощью [] со строковой версией имени поля.
в JavaScript свойства объекта можно получить с помощью. или с индексированием ассоциативного массива с помощью []. т.е. object.property
эквивалентно object ["property"]
, это должно помочь
var smth = mydata.list[0]["points.bean.pointsBase"][0].time;