函数: throttle()
ts
function throttle<T>(fn, wait?): (this, ...args) => void;定义于: common.ts:93
节流:每 wait 毫秒最多执行一次,首次触发立即执行。
常用于滚动、拖拽等持续高频事件的匀速处理。
类型参数
| 类型参数 |
|---|
T extends (...args) => any |
参数
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
fn | T | undefined | 需要节流的原函数 |
wait | number | 300 | 间隔毫秒数,默认 300 |
返回值
包装后的函数;其 this 与参数会透传给 fn
(this, ...args) => void
备注
采用时间戳判断,间隔内的多余调用被直接丢弃(不会在末尾补一次)。
示例
ts
const onScroll = throttle(() => log(), 200)
window.addEventListener('scroll', onScroll) // => 每 200ms 最多触发一次参见
debounce 同样用于控制高频调用,但只在停止触发后执行