我在 promise 中有很多困惑。它是同步的还是异步的?
return new Promise (function(resolved,reject){
//sync or async?
});
最佳答案
您传递到 Promise 构造函数的函数同步运行,但是任何依赖于它的解析的东西都将被异步调用。即使 promise 立即 resolve,任何处理程序都将异步执行(类似于 setTimeout(fn, 0)
)- 主线程首先运行到结束。
无论您的 Javascript 环境如何——无论您使用的是 Node 还是浏览器,这都是事实。
console.log('start');
const myProm = new Promise(function(resolve, reject) {
console.log('running');
resolve();
});
myProm.then(() => console.log('resolved'));
console.log('end of main block');
关于javascript - Promise在nodejs中是同步还是异步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57581970/