标签
note
字数
255 字
阅读时间
2 分钟
Promise.resolve()
Promise.resolve() 方法允许调用时不带参数,直接返回一个 resolved 状态的 Promise 对象。
所以,如果希望得到一个 Promise 对象,比较方便的方法就是直接调用 Promise.resolve() 方法
javascript
const p = Promise.resolve();
p.then(function () {
// ...
});需要注意的是,立即 resolve() 的 Promise 对象,是在本轮 " 事件循环 "(event loop)的结束时执行,而不是在下一轮 " 事件循环 " 的开始时
javascript
setTimeout(function () {
console.log('three');
}, 0);
Promise.resolve().then(function () {
console.log('two');
});
console.log('one');
// one
// two
// three上面代码中,setTimeout(fn, 0) 在下一轮 " 事件循环 " 开始时执行,Promise.resolve() 在本轮 " 事件循环 " 结束时执行,console.log('one') 则是立即执行,因此最先输出
promise 如何取消
axios解析之cancelToken取消请求原理 - 掘金