这个很明显promise面试
构造函数是同步执行的,then
方法是异步执行的 我从回答中选了个稍微复杂点的例子:
上干货:,阮一峰 不想看的也可以直接看这里:
先执行一个宏任务(其实运行js的时候这个宏任务已经在运行)然后执行微任务,清空微任务队列再执行宏任务,再执行微任务清空微任务队列...
promise面试
翻译过来就是承诺的意思這个承诺会在未来有一个确切的答复,并且该承诺有三种状态分别是:
这个承诺一旦从等待状态变成为其他状态就永远不能更改状态了,也就是说一旦状态变为 resolved 后就不能再次改变
当我们在构造promise面试
的时候,构造函数内部的代码是立即执行的
promise面试
实现了链式调用也就是說每次调用then
之后返回的都是一个promise面试
,并且是一个全新的promise面试
原因也是因为状态不可变。如果你在then
中
当然了promise面试
也很好地解决了回调哋狱的问题,可以把之前的回调地狱例子改写为如下代码:
前面都是在讲述promise面试
的一些优点和特点其实它也是存在一些缺点的,比如无法取消promise面试
错误需要通过回调函数捕获。
这个很明显promise面试
构造函数是同步执行的,then
方法是异步执行的 我从回答中选了个稍微复杂点的例子:
上干货:,阮一峰 不想看的也可以直接看这里:
先执行一个宏任务(其实运行js的时候这个宏任务已经在运行)然后执行微任务,清空微任务队列再执行宏任务,再执行微任务清空微任务队列...