云开发数据库调用时代码的先后运行顺序问题?
发布于 6 年前 作者 gangliu 7131 次浏览 来自 问答

上面的代码 console.log(a)得到的a的值是空,我怀疑console.log(a)在for循环之前运行了 ,如果是这样,怎么才能让console.log(a)在for循环之后运行呢。小白求教 谢谢大家

3 回复

数据库是异步的,concat这个动作有滞后

then后面再加then

谢邀。首先,需要弄清楚你最终目的是做什么(是要取前120个中 comments 为空的数据?)。

开发时__应该避免使用 for 循环去操作数据库__,看你贴出来的逻辑,是可以融合成一个请求来达想要的目的的。

如果非要按原有逻辑来也是可以改造的。使用 async / await 将循环内的 get() 赋值给数组 a,然后 join 得到结果后 console.log(a)。或者使用 Promise.all 将循环内全部查询合起来 走 .then() 输出

回到顶部