Ami*_*ner 2 javascript asynchronous node.js promise
我知道我们都使用 promise 来避免函数回调地狱,但我的问题是 promise 代码在事件循环中的哪个位置运行以及代码是否真的是异步的。
我的意思是,这段代码是否只是因为它在 promise 中运行而异步?或者承诺不是事件循环的一部分?
const p = new Promise((resolve,reject) =>{
resolve('am i part of the event loop ? , am i a diffrent thread ? or am i synchronized? ')
})Run Code Online (Sandbox Code Playgroud)
promise 如何使代码异步?
它没有。
promise 提供了一个标准接口(例如,使用.then()方法)来处理异步函数。
如果在 Promise 中所做的一切都是非异步的,那么代码仍然是非异步的。
const p = new Promise((resolve, reject) => {
console.log(1);
resolve();
console.log(2);
});
console.log(3);Run Code Online (Sandbox Code Playgroud)
您可以在上面看到 Promise 就像任何其他非异步代码一样正在阻塞。