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