【发布时间】:2019-11-10 02:10:54
【问题描述】:
- 在一个循环中 -
- 从mysql获取一些数据
- 将数据插入特定数组(在 i 的索引处)
但如您所知,'i' 的增长比我预期的要早得多。 我知道这是 nodejs 的同步/异步问题的问题。 我想把它改成同步函数,但它太混乱了,也许是我第一次......
...
dbconn.pool.getConnection(function (err, conn) {
...
for (var i = 0; i < search_result.length; i++) {
console.log("1, i here : "+i)
conn.query(sql_getId_and_count, [search_result[i].address], function (err, result) {
console.log("2.i here:" + i)
if (err) console.error(err)
else {
console.log("here : " + result[0].counter)
}
})
}
})
【问题讨论】:
-
实际上你不需要让它同步,这不是nodejs的意思,而是让它异步,我想你只想在查询中访问变量
i,然后请改用letvar.
标签: node.js loops promise async-await