Warum ist diese Variable undefiniert oder wird nicht zurückgegeben?

Ich habe folgenden Code:

/*
 * converts a string to geolocation and returns it
 */

function stringToLatLng(string){
    if(typeof string == "string"){
        geocoder = new google.maps.Geocoder();
        geocoder.geocode( { 'address': string}, function(results, status) {
           if (status == google.maps.GeocoderStatus.OK) {
              console.log("LatLng: "+results[0].geometry.location);
              return results[0].geometry.location;
           } else {
              console.log("Geocode was not successful for the following reason: " + status);
           }
        });
   }
}

Der LatLng gibt den korrekten Ort auf der Konsole aus, aber wenn ich das schreibe:

var pos = stringToLatLng('New York');
            console.log(pos);

Ich bekommeundefined zurück. Warum das? Vielen Dank

Antworten auf die Frage(2)

Ihre Antwort auf die Frage