Вы определяете список как object
. Свойства объекта в порядке их определения, но мы не можем доверять его порядку. Я думаю, что Chrome ошибки об этом https://code.google.com/p/v8/issues/detail?id=164
следующего first
метод дает первый элемент из списка объектов, эта функция работы в большинстве случаев, если объект пуст вернут undefined
значения.
var data = {
"_id":"123",
"list":{
"56":{"name":"Great ","amount":100,"place":"Town"},
"57":{"name":"Great 2","amount":200,"place":"City"}
},
"pop":[2,3]
};
function first(data){
for (var i in data){
if (data.hasOwnProperty(i)) break;
}
return data.hasOwnProperty(i) ? data[i] : undefined;
}
first(data.list).amount;
Если вы хотите сохранить порядок списка .. определить их как Array
. Пример
var data = {
"_id":"123",
"list":[
{"id" : "56" ,"name":"Great ","amount":100,"place":"Town"},
{"id" : "57" ,"name":"Great 2","amount":200,"place":"City"}
],
"pop":[2,3]
};
и доступ к ним, как data.list[0]
Ваш "список" это простой объект, а не массив, поэтому нет «первого» значения. – Bergi
Покажите нам, как хранятся эти 100 объектов, если вы хотите получить доступ ко всем из них, а не только один извлеченный пример. – Bergi