Node JS嵌套查询中的执行顺序

时间:2018-05-18 21:43:50

标签: javascript node.js asynchronous

以下代码的输出为:

OuterQuery
OuterQuery
InnerQuery
InnerQuery
InnerQuery

我希望输出为

OuterQueryInnerQueryInnerQueryOuterQueryInnerQuery

为什么它首先在Node JS中执行所有外部块? 是否有任何建议让它按顺序执行?

var new1 = function () {
  connection.query("select ID from tbl1", function (error, result, fields) {
    for (var id in result) {
      console.log("Outer Query");
      connection.query("select name from tbl2 where ID = '" + result[id].ID + "' ", function (err, result, fields) {
        if (err) throw err
        for (var count in result) {
          console.log("Inner Query");
        }
      })
    }
  })
}
export.new1 = new1;

感谢。

0 个答案:

没有答案