Model an event queue without timers.

Event Queue Model

event_queue_model.js
const extra = "audit";
const queue = ["read", extra, "write"];
const log = [];

while (queue.length > 0) {
  const task = queue.shift();
  log.push("run:" + task);
}

console.log("extra=" + extra);
console.log("log=" + log.join(","));
event-queue An event loop repeatedly takes the next queued task and runs it. This deterministic model keeps the queue visible without using real timers.