書いた順と、コールバックの実行順は違う
ブラウザの通常のスクリプトとして、次 のコードだけを実行するとします。タイマーのコールバックが実行できるまで、ページは開いたままとします。
console.log('A');
setTimeout(() => console.log('C'), 0);
Promise.resolve().then(() => console.log('B'));
console.log('D');答えは A → D → B → C です。現在の処理、マイクロタスク、タイマーのタスクを分けると、その理由を追えます。Node.js特有のキューや、モジュールの評価順を説明する図ではありません。HTML Standard:イベントループ