El método setInterval() nos ayuda a ejecutar repetidamente una función después de un retraso fijo. Devuelve un ID de intervalo único que luego puede ser utilizado por el método clearInterval() que detiene la ejecución repetida de la función.
Sintaxis:
const intervalId = setInterval(func, [delay, arg1, agr2, ..., argN]);
dónde,
- func es la función que queremos ejecutar repetidamente después de un retraso de milisegundos.
- delay (parámetro opcional) es el número de milisegundos de retraso entre dos ejecuciones repetidas de la función.
- arg1, …, argN (parámetro opcional) son los argumentos que se pasarán a func cuando se ejecute.
Ejemplo 1: En este ejemplo, veremos un número infinito de ejecuciones de funciones.
Cuando usamos el método setInterval() y no lo borramos usando el método clearInterval() entonces continúa ejecutando la función que se le pasó un número ilimitado de veces. Podemos usar el método setInterval() como este cuando necesitamos obtener información después de cada intervalo fijo, como cuando estamos construyendo un reloj y necesitamos calcular y actualizar la cantidad de segundos después de cada segundo. A continuación se menciona un ejemplo de código simple que demuestra este tipo de uso del método setInterval().
Index.js
setInterval(() => { console.log('HELLO GEEK'); }, 1000);
Producción:
Ejemplo 2: En este ejemplo, veremos un número finito de ejecuciones usando clearInterval(). Si queremos que la función se ejecute un número limitado de veces, podemos usar el método clearInterval(). Podemos borrar un intervalo pasando la identificación del intervalo que se devuelve desde el método setInterval() al método clearInterval().
Sintaxis:
clearInterval(intervalId)
El ejemplo de código que se menciona a continuación demuestra el uso del método clearInterval() para lograr ejecuciones repetidas finitas de la función.
Index.js
let count = 0; const intervalId = setInterval(() => { console.log('HELLO GEEK'); count++; if (count === 5) { console.log('Clearing the interval id after 5 executions'); clearInterval(intervalId); } }, 1000);
Producción:
Ejemplo 3: En este ejemplo, veremos Usar los argumentos pasados a setInterval(). Nuestra función recibe los argumentos que se pasan al método setInterval() después del parámetro de retraso y se pueden usar de la manera deseada. El código mencionado a continuación lo demuestra con la ayuda de un ejemplo de código simple.
Index.js
let count = 0; // The arguments passed after the // delay (in milliseconds) will // be received in our function // inside the setInterval() method const intervalId = setInterval( (a, b) => { console.log(`The sum of ${a} and ${b} is ${a + b}`); count++; if (count === 5) { console.log("Clearing the interval id after 5 executions"); clearInterval(intervalId); } }, 1000, 5, 10 );
Producción:
Publicación traducida automáticamente
Artículo escrito por shivamsingh00141 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA