js
1 2process.nextTick(() => { 3 Promise.resolve().then(() => console.log('PROMISE1')) 4 console.log('next tick1') 5 process.nextTick(() => { 6 Promise.resolve().then(() => console.log('PROMISE2')) 7 console.log('next tick2') 8 process.nextTick(() => { 9 Promise.resolve().then(() => console.log('PROMISE3 ')) 10 console.log('next tick3') 11 }) 12 }) 13}) 14 15// 実行 16/* 17 * next tick1 18 * next tick2 19 * next tick3 20 * PROMISE1 21 * PROMISE2 22 * PROMISE3 23 */
process.nextTick
で渡したコールバック関数は次のイベントループの最初に実行されると理解していますが、上の実行結果を見ると少し違うですかね?上のコードではprocess.nextTick
はどのように動いてますか?
試しにprocess.nextTick
をsetImmediate
にしたら思い通りに交互に実行されました。
曖昧な質問ですみません。よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/09 11:47