この関数を使用して、渡された文字列を Google マップの結果にジオコーディングしようとしています。
function codeAddress(address) {
var firstResult;
geocoder.geocode( { 'address': address}, function(results, status) {
if(status == google.maps.GeocoderStatus.OK) {
firstResult = results[0];
} else {
firstResult = "failed";
}
});
return firstResult;
}
問題は、Chrome からデバッガーを使用してデバッグしようとして、ceocoder.geocode ステートメントの外側と内側にブレークポイントを挿入しようとすると、プログラムの実行が 3 行目にあることがはっきりとわかりますが、内側の行をスキップしてまっすぐ進むことです。戻り値に (未定義の値を返します)。また、その中のifステートメントを通過することもありますが、そこにブレークポイントを設定しましたが、returnステートメントには行きません。
私はこれを間違った方法でやろうとしていますか? どうすればこれを修正できますか?