Skip to content

Function: debounce()

debounce<TArgs, ThisArg>(callback, delay?, config?): (...args) => void

Defined in: packages/core/src/deferred/debounce.ts:31

Returns a function that invokes the callback function after certain delay/timeout. All errors will be gracefully swallowed.

Type Parameters

TArgs

TArgs extends unknown[]

ThisArg

ThisArg

Parameters

callback

(this, ...args) => unknown

function to be invoked after timeout

delay?

number = 50

(optional) timeout duration in milliseconds. Default: 50

config?

DebounceOptions<ThisArg> = {}

Returns

(...args) => void

Example

Debounce function calls

javascript
import { debounce } from '@superutils/core'

const handleChange = debounce(
    event => console.log('Value:', event.target.value),
    300 // debounce delay in milliseconds
)

handleChange({ target: { value: 1 } }) // will be ignored
handleChange({ target: { value: 2 } }) // will be ingored
handleChange({ target: { value: 3 } }) // will be invoked