FP
执行调度
通过闭包,保留原 执行函数,创建新函数获取 arguments ,再添加调度策略包裹真实执行过程,真实执行过程中再通过闭包获取原函数,原参数 在调度许可后执行。
const batch = (callback) => {
let result: T = null
try {
batchStart()
result = callback()
} finally {
batchEnd()
}
return result
}
const register = (callback) => {
return (...args) => {
return batch(() => {
return callback.apply(target, args)
})
}
}
const test = (a, b, c) => {}
const testResisted = register(cb)