Google Geocoding APIを使用して、住所から緯度と経度を取得しようとしています。後で使用するために、変数内に座標を格納したいと思います。非同期呼び出しであることがわかっています。以下のコードでは、関数useCordinatesを使用して、後で使用できるように座標をグローバル変数に割り当てますが、デバッグ時に座標が定義されていません。javascriptを初めて使用します。暗黙のグローバル変数は、定義されています。
myGlobalVar ='Hello world'; 助けてくれてありがとう。
function codeAddress(address){
var loc=[];
geocoder.geocode( { 'address': address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
// no need to define it in outer function now
loc[0]=results[0].geometry.location.lat();
loc[1]=results[0].geometry.location.lng();
useCordinates( loc );
} else {
alert("Geocode was not successful for the following reason: " + status);
}
});
}
function useCordinates(cordinateArray){
cordinates= cordinateArray;
}
functionTestCodeAddress(){
start = document.getElementById('start').value;
codeAddress(start);
//assign the global variable 'cordinates'
document.getElementById('start').value=cordinates;
}