Javascript Firebase调用后无法访问变量

Javascript Firebase调用后无法访问变量,javascript,database,firebase,scope,Javascript,Database,Firebase,Scope,我正在使用Firebase访问相同的数据,但我无法使用用于访问数据的函数之外的数据。 我如何为刚访问的数据而不是初始值创建控制台日志 var whatNeed = 'hello'; gameData = new Firebase('https://thegame.firebaseio.com/gameData'); gameData.on("value", function(snapshot) { var data = snapshot.val(); wh

我正在使用Firebase访问相同的数据,但我无法使用用于访问数据的函数之外的数据。 我如何为刚访问的数据而不是初始值创建控制台日志

var whatNeed = 'hello';
gameData = new Firebase('https://thegame.firebaseio.com/gameData');
    gameData.on("value", function(snapshot) {
        var data = snapshot.val();
        whatNeed = data.property;
    });
console.log(whatNeed);

当在回调外部调用时,whatNeed将始终包含初始值,因为console.log将首先被调用,因为值事件处理程序是异步的

如果可以,在回调中调用console.log。有关Firebase上下文中此行为的解释,请参阅a.o和。因为这个问题不是Firebase特有的,所以您也可以阅读以下更一般的答案:谢谢。对不起,这是重复的,我真的搜索过了,但没有找到。