![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
异步
文章平均质量分 73
巴拉巴拉小魔仙_
这个作者很懒,什么都没留下…
展开
-
微任务和宏任务
事件循环micro task 和 macro task 表示异步任务的两种分类。js语言为单线程,同一个时间只能做一件事,为了防止主线程的不阻塞,Event Loop 的方案应用而生。Event Loop 包含两类:一类是基于Browsing Context,一种是基于Worker。二者的运行是独立的,也就是说,每一个 JavaScript 运行的"线程环境"都有一个独立的 Event Loop,每一个 Web Worker 也有一个独立的 Event Loop。任务队列同步任务..原创 2022-01-25 22:12:51 · 5 阅读 · 0 评论 -
async / await 和 Promise 的关系
背景:1.异步回调地狱 callback hell;2.Promise 是基于 then catch 的链式调用,但也是基于回调函数;3. async / await 是同步语法去编写异步代码,彻底消灭回调函数,但它也只是一个语法糖,从语法层面去解决 回调地狱;关系:async / await 和 Promise 并不互斥,二者相辅相成。async / await 并不能改变异步的本质( js是单线程的,异步需要回调,都是要基于 event loop 来实现)。await 后面的原创 2022-01-25 19:01:42 · 1977 阅读 · 2 评论 -
Promise 的理解
1.三种状态:pending:初始状态 fulfilled: 意味着操作成功完成 rejected: 意味着操作失败2.状态变化:pending ---> fulfilled 或 pending --> rejected (变化不可逆)3.then 和 catch 对状态的影响:then 和 catch 正常状态都会返回 resolved,里面有报错则返回 rejected4.链式调用// 例一Promise.resolve.th...原创 2022-01-25 14:15:52 · 475 阅读 · 0 评论