我试图让我的数组的长度,但我总是得到0,即使控制台显示,我把5个OBJETSArray.length等于0总是
async function getDiaries() {
return new Promise((resolve, reject) => {
var url = firebase.database().ref('/diary');
var diaries = [];
url.on('value', (snap) => {
snap.forEach((child) => {
diaries.push({
key: child.key,
name: child.val().name,
date: child.val().description,
url: child.val().url,
idOwner: child.val().idOwner
});
});
});
console.log(diaries.length);// get 0
resolve(diaries)
})}
在您的数组被填充之前正在打印...您在异步概念中误导 – guijob