我的项目中的对象中有这种类型的数据。
{
"name": "Travel",
"map": [
{
"name": "Montreal",
"lat": "45.498649",
"lng": "-73.492729"
},
{
"name": "Brossard",
"lat": "45.466667",
"lng": "-73.450000"
}
]
}
如何创建此类结构代码以显示我的Google地图?
var locations = [
{
name: "Montreal",
latlng: new google.maps.LatLng(45.498649, -73.492729)
},
{
name: "Brossard",
latlng: new google.maps.LatLng(45.466667, -73.450000)
}
];
非常感谢。
答案 0 :(得分:3)
如果你使用'forEach',那就更简单了:
json.map.forEach(function(val){
locations.push({
name: val.name,
latlng: new google.maps.LatLng(val.lat, val.lng)
});
});
答案 1 :(得分:2)
你很亲密:
for (i = 0; i < dmap.length; i++) {
locations.push({name: dmap[i].name, lat: dmap[i].lat,lng:dmap[i].lng});
}
另一种方法是使用Array.map
:
dmap.map(function(item){
return {name: item.name, lat: item.lat, lng:item.lng};
});
自编辑以来这是相关代码:
for (i = 0; i < dmap.length; i++) {
locations.push({name: val.name,
latlng: new google.maps.LatLng(val.lat, val.lng)
});
}
或者
dmap.map(function(item){
return {name: val.name,
latlng: new google.maps.LatLng(val.lat, val.lng)
};
});