如何在JavaScript中存储Firebase数据库值?

如何在JavaScript中存储Firebase数据库值?,javascript,firebase-realtime-database,Javascript,Firebase Realtime Database,我一直试图将局部变量的值存储到全局变量中,但这似乎不起作用。有什么帮助吗 var xv = 0; var yv = 0; var itemx = firebase.database().ref().child("item").child("xval"); itemx.on('value', function(xvalue){ xv = xvalue.val(); }); var itemy = firebase.database().ref().child("item").chil

我一直试图将局部变量的值存储到全局变量中,但这似乎不起作用。有什么帮助吗

var xv = 0;
var yv = 0;

var itemx = firebase.database().ref().child("item").child("xval");
itemx.on('value', function(xvalue){
    xv = xvalue.val(); 
});

var itemy = firebase.database().ref().child("item").child("yval");
itemy.on('value', function(yvalue){
    yv = yvalue.val();
});

var start = graph.grid[aa][bb];
var end = graph.grid[xv][yv];
var result = astar.search(graph, start, end);

我无法在Firebase函数之外获取变量xv和yv的值。

无法将对象保存到定义为整数的变量。声明变量,而不使用任何类似于这样的值初始化它们,您就可以开始了

var xv, yv;

var itemx = firebase.database().ref().child("item").child("xval");
itemx.on('value', function(xvalue){
    xv = xvalue.val(); // it contains an object to view it print on console.
    console.log(xvalue.val())
});

var itemy = firebase.database().ref().child("item").child("yval");
itemy.on('value', function(yvalue){
    yv = yvalue.val();
});