【发布时间】:2018-01-02 13:03:49
【问题描述】:
这是我的数据库。
我正在尝试遍历每个对象并将“名称”值打印到控制台。
这是我的 JS 代码
var scores = [];
var database = firebase.database();
database.ref().once("value", function(snap){
scores = snap.val();
});
console.log(scores[1].Name);
据我了解,这就是发生的事情。
snap = {rootKey : [对象数组]
scores = snap.val() = [{Name : Babara}, {Name : Josh}, ......]
scores[1] = {姓名:乔希}
scores[1].Name = 乔希
编辑
当我尝试打印整个数组时,我得到了这个。
database.ref().once("value", function (snap) {
scores = snap.val();
console.log(scores);
console.log(scores[1]);
});
如此处所示,我无法访问数组内的对象。
【问题讨论】:
-
你的函数,作为一个回调,正在运行之后
console.log运行。如果把日志语句移到回调函数中呢? -
@csp713 试过这个
-
database.ref().once("value", function(snap){ scores = snap.val(); console.log(scores[1].Name); }); -
console.log(scores[1]);这不起作用,因为您可以看到键是唯一的 id
标签: javascript firebase firebase-realtime-database