Promise 构造函数是同步执行还是异步执行,那么 then 方法呢?
解题:
promise构造函数是同步执行的,then方法是异步执行的 欢迎大佬们补充!!
直接上代码
const promise = new Promise((resolve, reject) => { console.log(1) resolve() console.log(2) }) promise.then(() => { console.log(3) }) console.log(4)
执行结果是:1243
扩展
const promise = new Promise((resolve, reject) => { console.log(1); resolve(5); console.log(2); }).then(val => { console.log(val); }); promise.then(() => { console.log(3); }); console.log(4); setTimeout(function() { console.log(6); });
执行结果: 124536
Promise new的时候会立即执行里面的代码 then是微任务 会在本次任务执行完的时候执行 setTimeout是宏任务 会在下次任务执行的时候执行