私はGoogle Maps APIに取り組んでいます。以下の関数が index++ の後に呼び出される理由がわかりません。私の知る限り、ReverseGeocode() を最初に呼び出す必要があります。その代わりに、最初にインクリメントしてから、問題を引き起こしている関数を呼び出します。アラート ボックスは記述どおりに表示されますが、中央の関数は関数の最後の行が実行された後に呼び出されます (index++)。
function placeMarker(location)
{
alert("iiii");
ReverseGeocode(location.lat(),location.lng());
alert("jjjk");
index++;
}
これが私のReverseGeoCodeです
function ReverseGeocode(lat,lng) {
var latlng = new google.maps.LatLng(lat, lng);
geocoder.geocode({'latLng': latlng}, function(results, status)
{
if (status == google.maps.GeocoderStatus.OK)
{
if (results[1])
{
places[index]=results[0].formatted_address;
alert(places[index]+"index="+index);
AddRow('table',results[0].formatted_address);
document.getElementById("dataa").innerHTML+=results[0].formatted_address+"<br/>";
}
}
else
{
alert("Geocoder failed due to: " + status);
}
});
}
説明してください。前もって感謝します。