Lodash método _.debounce() se utiliza para crear una función antirrebote que retrasa la función dada hasta que haya pasado el tiempo de espera indicado en milisegundos desde la última vez que se llamó a esta función antirrebote.
La función antirrebote tiene un método de cancelación que se puede usar para cancelar las llamadas a funciones que están retrasadas y un método de descarga que se usa para llamar inmediatamente a la función retrasada. También proporciona algunas opciones que se pueden utilizar para indicar si la función indicada debe llamarse en el borde inicial y/o posterior del tiempo de espera.
escáner siguiente
Nota:
- El función se llama con los últimos argumentos que se dan a la función antirrebote. Sin embargo, las llamadas posteriores a la función antirrebote devuelven el resultado de la última función llamar.
- Cuando las opciones inicial y final son verdaderas, la función se ejecutará inmediatamente cuando sea la primera llamada y la segunda llamada será después de completar el tiempo de 'espera'.
- Cuando el tiempo de espera es 0 y la opción principal es falsa, entonces el función la llamada se aplaza hasta el siguiente tick.
Sintaxis:
_.debounce( func, wait, options{})>
Parámetros:
- función: Es la función la que hay que rebotar.
- esperar: Es el número de milisegundos que se retrasarán las llamadas. Es un parámetro opcional. El valor predeterminado es 0.
- opciones: Es el objeto de opciones que se puede utilizar para cambiar el comportamiento del método. Es un parámetro opcional.
- principal (booleano) : Si es cierto, la función se ejecutará inmediatamente en lugar de esperar el tiempo de 'espera'. El valor predeterminado es falso, lo que significa que espera hasta que no se complete el tiempo de 'espera'.
- maxEsperar (número) : Es el número máximo de veces que se llamará a la función una vez transcurrido este tiempo.
- siguiendo (booleano) : Define la llamada de una función al tiempo especificado (tiempo de espera). de forma predeterminada, se establece en verdadero.
Valor de retorno:
Este método devuelve la nueva función antirrebote.
Ejemplo 1: En este ejemplo, la función se llamará después de 1000 ms como se menciona en la función lodash.debounce().
JavaScript
// Requiring lodash library> const lodash = require(> 'lodash'> );> // Using lodash.debounce() method> // with its parameters> let debounce_fun = lodash.debounce(> function> () {> > console.log(> 'Function debounced after 1000ms!'> );> }, 1000);> debounce_fun();> |
>
>
Producción:
java agregar a la matriz
Function debounced after 1000ms!>
Ejemplo 2: En este ejemplo, ambos parámetros opcionales son verdaderos, por eso la función se ejecuta inmediatamente sin seguir el tiempo especificado.
JavaScript
programa matricial en lenguaje c
// Requiring lodash library> const _ = require(> 'lodash'> );> // Using _.debounce() method> // with its parameters> let debounced_fun = _.debounce(> function> () {> > console.log(> 'function is executing immideately!!'> )> }, 5000, { leading:> true> , trailing:> true> });> debounced_fun();> |
>
>
Producción:
function is executing immideately!!>