我对 promise 有很多困惑。是同步的还是异步的?
return new Promise (function(resolved,reject){
//sync or async?
});
最佳答案
传入 Promise 构造函数的函数同步运行,但任何依赖于其解析的函数都将被异步调用。即使 promise 立即解析,任何处理程序都将异步执行(类似于您 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 - Node js中Promise是同步还是异步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49911319/