如何在JavaScript中将同步函数转换为异步函数

时间:2019-08-24 11:07:24

标签: javascript node.js asynchronous synchronous

JavaScript 中的功能默认情况下为同步。有没有一种方法可以将同步功能转换为异步

注意:我不想使用 setTimeout 函数(或在Node.js中使用setImmediate)。只是ECMAScript规格。尝试添加async关键字,但结果是相同的同步行为。

下面的示例说明了默认行为。

代码:

console.log("start");

function countTo100Mill() {
  for(i=0; i <= 100000000; i++) {
    if(i === 100000000) {
       console.log("count to 100mill complete");
       }
  }
}

function countTo100() {
  for(i=0; i <= 100; i++) {
    if(i === 100) {
       console.log("count to 100 complete");
       }
  }
}

countTo100Mill();

countTo100();

console.log("end");

默认行为:

无论延迟如何,功能countTo100Mill都将在countTo100之前运行。

我想要实现的目标:

我想要一种将上面代码中定义的函数转换为异步运行的方式,以便countTo100后跟countTo100Mill来完成。

0 个答案:

没有答案