javascript atribuindo valor a variável do retorno de retorno de chamada (tempo)
Estou tendo problemas para atribuir valor de retorno da função de chamada do Firebase à minha variável global. Esta é a minha função:
function getThePushNameById( path , id ){
path.once( 'value', function( data ){
if( data.child('id').val() != id ){
data.forEach( function( newData ){
var base = new Firebase( path.child( newData.name() ).toString() );
getThePushNameById( base, id );
})
}else{
//finishes the function when path is founded - returns the value
return path.name();
}
})
}
e este é o outro arquivo em que defino a solicitação:
var base = new Firebase(path/to/my/base);
var output = getThePushNameById( base , 2 )
console.log(output);
Então, meu problema é queconsole.log
não esperaoutput
a ser definido, mas executa-se e registraundefined
. E minha pergunta é se alguém sabe como posso fazerconsole.log
esperar pelo valor?