¿Cómo devolver el valor de una función de devolución de llamada asincrónica? [duplicar
Esta pregunta ya tiene una respuesta aquí:
¿Cómo devuelvo la respuesta de una llamada asincrónica? 33 respuestasEsta pregunta se hace muchas veces en SO. Pero aún así no puedo conseguir cosas.
Quiero obtener algún valor de la devolución de llamada. Mira la secuencia de comandos a continuación para aclarar.
function foo(address){
// google map stuff
geocoder.geocode( { 'address': address}, function(results, status) {
results[0].geometry.location; // I want to return this value
})
}
foo(); //result should be results[0].geometry.location; value
Si trato de devolver ese valor simplemente "indefinido". Seguí algunas ideas de SO, pero aún falla.
Esos son
function foo(address){
var returnvalue;
geocoder.geocode( { 'address': address}, function(results, status) {
returnvalue = results[0].geometry.location;
})
return returnvalue;
}
foo(); //still undefined