私は関数コールバック地獄を避ける約束を使用することを知っていますが、私の質問は、イベントループで約束コードが実行され、コードが本当に非同期かどうかです。promiseはどのようにコードを非同期にするのですか?
私は、約束の範囲内で実行されているという理由だけで、このコードは非同期ですか? 約束はイベントループの一部ではありませんか?
const p = new Promise((resolve,reject) =>{
resolve('am i part of the event loop ? , am i a diffrent thread ? or am i synchronized? ')
})
"どうすれば非同期コードを約束しますか"それは、渡された関数が非同期を呼び出すことを期待しています。 – Teemu
質問のコードのどれも非同期に実行されません –
@ c69:解決と拒否は非同期的に呼び出されます**、あなたの関数はそれらを呼び出す約束コンストラクタに渡されます。そして、この関数はpromiseコンストラクタによって同期的に実行されます。非同期性を導入することができるのは関数の本体です(ただし必須ではありません)。関数に非同期関数がない限り、resとrejの両方が同期的に呼び出されます。 –