Cómo programar tareas usando SetTimeOut y SetInterval en JavaScript

Cómo programar tareas usando SetTimeOut y SetInterval en JavaScript

JavaScript proporciona un par de métodos incorporados para la programación de tiempo, como el método "setTimeout ()" y el método "setInterval ()". Estos métodos se utilizan para programar las tareas, el método "setTimeout ()" ejecuta una función solo una vez en el momento programado, pero el método "setInterval ()" invoca una función repetidamente después de la espera especificada.

Método setInterval () en JavaScript

JavaScript ofrece un método setInterval () que nos permite invocar una función repetidamente. Se necesitan dos parámetros uno para que la función invoque y el segundo parámetro es para el tiempo. El "SetInterval ()" puede tomar parámetros adicionales y pasarlos a la función de devolución de llamada.

Consideraremos un ejemplo para comprender el funcionamiento del método SetInterval ():

Sea número = 0;
Sea número = 0;
function square ()
número ++;
SEQ = Número*Número;
consola.log ("El número es igual:", número);
consola.log ("cuadrado del número:", seq);

setInterval (cuadrado, 3000);

En este ejemplo, escribimos un código para imprimir el cuadrado de cualquier número positivo. Como tenemos que llamar a la función cuadrada repetidamente, por lo tanto, utilizamos el "SetInterval ()" método. El código imprimirá el cuadrado de cada número positivo después del retraso de 3 segundos:

Cómo funciona SetInterval

Inicialmente, creamos una función "cuadrado( )" y dentro del "cuadrado( )" función escribimos el código para imprimir el cuadrado de cualquier número. Después, invocamos el "cuadrado( )" función usando el "SetInterval ()" método. Ahora que pasará? Comenzará una cadena:

  • Espere 3 segundos, incrementa el número e imprima el cuadrado de ese número,
  • Y espere nuevamente 3 segundos, luego incrementa el número e imprima el cuadrado de ese número.
  • El método "setInterval ()" imprimirá repetidamente el cuadrado de cada número y no.

método setTimeOut () en JavaScript

En JavaScript, el método "setTimeout ()" nos permite ejecutar cualquier función después de la hora especificada una vez. Se necesitan dos parámetros uno para que la función invoque y el segundo parámetro es para el tiempo. Consideremos el mismo ejemplo y apliquemos "SetTimeOut ()" método y observar la diferencia:

Sea número = 0;
function square ()
número ++;
SEQ = Número*Número;
consola.log ("El número es igual:", número);
consola.log ("cuadrado del número:", seq);

setTimeOut (cuadrado, 3000);

Como resultado, invocará la función cuadrada solo una vez, lo que significa que imprimirá el cuadrado de solo un número:

Cómo funciona SetInterval

Si invocamos el "cuadrado( )" función usando el "SetTimeOut ()" Método, ahora lo que sucederá?

  • Cuando ejecutamos el código, inicialmente, esperará tres segundos, luego incrementará el número e imprimirá el cuadrado de ese número.
  • Pero esta vez no invocaría el método "cuadrado ()" nuevamente porque "SetTimeOut ()" llama a la función solo una vez, y como resultado, obtendremos el cuadrado de solo un número.

Nota:

No podemos llamar a la función dentro del método "setTimeOut ()" o en el método "setInterval ()" en su lugar, solo escribiremos el nombre de la función si lo hacemos, estos métodos no funcionarían correctamente, la salida será Impreso sin ningún retraso:

setTimeOut (cuadrado, 3000); // sintaxis correcta
setTimeout (Square (), 3000); // Sintaxis incorrecta
setInterval (cuadrado, 3000); // sintaxis correcta
setInterval (Square (), 3000); // Sintaxis incorrecta

En este código, hemos escrito tanto la sintaxis correcta como la incorrecta para el método "setTimeout ()" y el método "setInterval ()"

Conclusión

JavaScript proporciona algunos métodos incorporados que se utilizan para ejecutar algún código basado en un temporizador. Estas funciones ofrecen diferentes funcionalidades, por ejemplo, la función "setTimeout ()" ejecuta cualquier función solo una vez, mientras que el método "setInterval ()" ejecuta cualquier función recursivamente. Este artículo proporciona una descripción general de los métodos "setTimeout" y "setInterval ()" con la ayuda de algunos ejemplos.