我有一个ajax请求,它加载一个JSON文件并通过存储对象的引用来解析它。 我正试图找到一种可以循环访问对象的方法,但由于它的结构,我在控制台上出错。
以下是我正在解析的JSON示例:
{
"markers": {
"marker": [
{
"name": "john",
"latitude": "53.4682282",
"longitude": "-2.238547"
},
{
"name": "david",
"latitude": "53.4663409",
"longitude": "-2.2328164"
},
{
"name": "mathew",
"latitude": "53.4668135",
"longitude": "-2.2310998"
}
]
}
}
我尝试了以下js循环,但我似乎无法让它正常工作。 (N.B.从解析JSON中检索到的对象被引用为markers
。
markers.forEach(function(marker) {
console.log(marker.name);
});
答案 0 :(得分:1)
markers
是包含数组marker
的对象。您需要迭代marker
var obj = {
"markers": {
"marker": [{
"name": "john",
"latitude": "53.4682282",
"longitude": "-2.238547"
},
{
"name": "david",
"latitude": "53.4663409",
"longitude": "-2.2328164"
},
{
"name": "mathew",
"latitude": "53.4668135",
"longitude": "-2.2310998"
}
]
}
}
obj.markers.marker.forEach(m => console.log(m.name));
答案 1 :(得分:0)
试试这个:
markers.marker.forEach(function(marker) {
console.log(marker.name);
});
答案 2 :(得分:0)
我需要访问对象内的对象。即,
markers.markers.marker.forEach(function(marker) {
console.log(marker.name);
});
答案 3 :(得分:0)
试试这个:
' markers.marker.map((ma)=> { 的console.log(ma.name); });`