跳到主要内容

nextMacroTask()

function nextMacroTask(fn): Timeout;

Defined in: async/nextMacroTask.ts:14

在下一个宏任务中执行函数 使用 setTimeout(fn, 0) 将函数推迟到当前执行栈清空后执行

Parameters

ParameterTypeDescription
fn() => any要延迟执行的函数

Returns

Timeout

Example

console.log('1');
nextMacroTask(() => console.log('3'));
console.log('2');
// 输出顺序: 1, 2, 3
**Note:** 宏任务包括 setTimeout、setInterval、I/O 操作等
**Note:** 常用于避免阻塞当前执行栈,或确保 DOM 更新后再执行代码
**Note:** 与 nextMicroTask 的区别:宏任务在微任务之后执行