我在JSON中有一大堆对象,如下所示:
var data = {
4eae1aa12efa83745d00000b: {
location: "office",
latLong: [
40.7069546, -74.0094471
],
},
4eae1aa12efa83745d000000: {
location: "home",
latLong: [
42.3584308, -71.0597732
]
}
};
4eae1aa12efa83745d00000b
样式键是随机的。如何遍历JSON以打印每个嵌套JSON对象的位置和latLong数组?
我试过了:
$.each(data, function() {
$.each(this, function() {
console.log(this.location);
});
});
但这不会返回任何内容
答案 0 :(得分:1)
您应该查找$.map function来翻译对象/数组中的项目 - 请执行以下操作:
$.map(data, function(val, i){
console.log(val.location);
console.log(val.latLong[1]);
console.log(val.latLong[2]);
})
我相信这就是你所追求的目标。
答案 1 :(得分:1)
你唯一的问题是你不需要内循环。
$.each(data, function(id, value) {
console.log(value.location);
});
答案 2 :(得分:0)
您正在尝试遍历对象的属性。要做到这一点:
for(var prop in obj) {
if(obj.hasOwnProperty(prop))
// do something with obj[prop].latLng
}