当前位置:编程学习 > > 正文

js宏任务都有哪些(JavaScript 操作宏任务与微任务)

时间:2021-10-21 08:21:04类别:编程学习

js宏任务都有哪些

JavaScript 操作宏任务与微任务宏任务与微任务 有关定时器
  1. 定时器模块,到达时间点将其放入宏任务队列
  2. 如果主线程没有任务则执行,如果有则等待执行完成后再继续执行
  3. 如果有两个相同时间的定时器则上面的先执行下面的后执行
  4. 如果两个时间不同的定时器则时间短的先执行时间长的后执行

注意点:


js宏任务都有哪些(JavaScript 操作宏任务与微任务)

有关Promise
  • setTimeout(() => {
        console.log("定时器");
        setTimeout(() => {
          console.log("timeout timeout");
        }, 0);
        new Promise(resolve => {
          console.log("settimeout Promise");
          resolve();
        }).then(() => {
          console.log("settimeout then");
        });
      }, 0);
      new Promise(resolve => {
        console.log("Promise");
        resolve();
      }).then(() => {
        console.log("then");
      });
      console.log("ssss");
    
  • 执行顺序:Promise=>ssss=>then=>定时器=>settimeout Promise=>settimeout then=>timeout timeout

    DOM渲染任务

    浏览器渲染:CSS+DOM执行遇到js优先执行js
    可以把js尽量放在下面:避免白屏

    任务共享内存

    任务不会同时执行,会一个一个的被调度,他们共享内存

    Promise微任务处理复杂业务

    使用promise可以将任务变成异步任务使其不影响同步任务的执行

    到此这篇关于JavaScript 操作宏任务与微任务的文章就介绍到这了,更多相关JavaScript宏任务与微任务内容请搜索开心学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持开心学习网!

    上一篇下一篇

    猜您喜欢

    热门推荐