首页 > 其他 > 详细

async与await执行顺序问题

时间:2021-04-10 01:04:18      阅读:18      评论:0      收藏:0      [点我收藏+]

async与await执行顺序问题

  1. await仅能在被async修饰的函数中执行
  2. 添加了await修饰的函数,默认异步任务执行完成之后才往下执行
  3. 不加await默认返回一个promise对象,加了await会直接返回数据

举个例子

function resolveAfter1Seconds() {
  return new Promise(resolve => {
    setTimeout(() => {
      resolve(‘resolved1‘);
    }, 5000);
  });
}
function resolveAfter2Seconds() {
  return new Promise(resolve => {
    setTimeout(() => {
      resolve(‘resolved2‘);
    }, 10000);
  });
}

async function asyncCall() {
  console.log(‘calling‘);
      const result = await resolveAfter2Seconds();
  	console.log(result);//等待10秒后执行这句话
    console.log(‘calling‘);//接着执行这句话
    const result2 = await resolveAfter1Seconds();
  console.log(result2);//再等五秒后执行这句话
  // expected output: "resolved"
}

asyncCall();

async与await执行顺序问题

原文:https://www.cnblogs.com/attack204/p/14638615.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!