Skip to content

函数: throttle()

ts
function throttle<T>(fn, wait?): (this, ...args) => void;

定义于: common.ts:93

节流:每 wait 毫秒最多执行一次,首次触发立即执行。

常用于滚动、拖拽等持续高频事件的匀速处理。

类型参数

类型参数
T extends (...args) => any

参数

参数类型默认值描述
fnTundefined需要节流的原函数
waitnumber300间隔毫秒数,默认 300

返回值

包装后的函数;其 this 与参数会透传给 fn

(this, ...args) => void

备注

采用时间戳判断,间隔内的多余调用被直接丢弃(不会在末尾补一次)。

示例

ts
const onScroll = throttle(() => log(), 200)
window.addEventListener('scroll', onScroll) // => 每 200ms 最多触发一次

参见

debounce 同样用于控制高频调用,但只在停止触发后执行