同步异步-Promise

1.同步异步API概念:

同步API:当前的代码执行完后,才会继续向下执行
示例:

console.log('before');
console.log('after');
// before
// after

异步API:当前的代码的执行不会阻塞后续的代码执行
示例:

console.log('before');
setTimeout(() => {
    console.log('last');
}, 2000);
console.log('after');
// before
// after
// 2秒后的last

2.获取同步异步返回结果

同步API:直接用返回值的形式获取;
异步API:用回调函数的形参获取

3.同步异步API代码执行顺序

  • 代码执行区:

    • 同步代码执行区
    • 异步回调队列
  • 同步代码:从上往下执行

  • 异步回调:在同步代码执行完后,再开始轮询,满足条件就执行

  • 补充:

  • JS 同步/异步代码执行机制:
    要理解同步异步,我们先拟定两个新概念,帮助我们理解:

    • 1 同步代码执行区:可以理解成执行同步代码的区域
    • 2 异步回调队列:可以理解成放置异步回调函数的区域
      基于这两个新概念,我们再来谈同步/异步代码执行机制,首先,代码在运行时,会有一个同步代码执行区,①从上至下执行同步代码,如果遇到异步代码,②会先将该异步操作推送到异步回调队列中,然后继续执行后续的同步代码,如果又遇到异步代码,逻辑同②继续,直到同步代码执行区中所有的同步代码都执行完毕,就会根据异步操作被推送的先后顺序(先进先出)依次轮询异步回调队列,看是否满足执行条件,若满足,则将其放入同步代码执行区去执行,后续逻辑同①继续,循环往复

猜你喜欢

转载自blog.csdn.net/weixin_47346395/article/details/106339610