申し訳ありませんが、これが何千回も尋ねられていることは知っていますが、回答を読みましたが、まだ理解できません. 私はJavascriptが初めてで(実際には昨日始めました)、次の問題があります。
非同期関数があり、戻り値が必要ですが、もちろん未定義です。コールバックについて読んだことがありますが、どのように機能するのかわかりません。
機能は次のとおりです。
function getLatLong(address){
var geo = new google.maps.Geocoder;
geo.geocode({'address':address},function(results, status){
if (status == google.maps.GeocoderStatus.OK) {
var returnedLatLng = [];
returnedLatLng["lat"] = results[0].geometry.location.lat();
returnedLatLng["lgn"] = results[0].geometry.location.lng();
locationTarget = new google.maps.LatLng(returnedLatLng.lat,returnedLatLng.lgn);
alert(locationTarget);
return locationTarget;
} else {
alert("Geocode was not successful for the following reason: " + status);
}
});
}
この関数を initialize() 関数から呼び出しており、次のようにしています。
var location = getLatLong(address);
さて、私の質問は、ここでコールバックがどのように役立つでしょうか? 可能であれば..どのコードを使用すればよいですか?
どうもありがとう!(これは私の最初の最初の質問です!)