¡Ayuda al desarrollo del sitio, compartiendo el artículo con amigos!

Introducción a Node.js setTimeout

El siguiente artículo proporciona un esquema para Node.js setTimeout. setTimeout es una función integrada de la API de Node.js que ejecuta un método dado solo después de un período de tiempo deseado que debe definirse solo en milisegundos y devuelve un objeto de tiempo de espera que se puede usar más en el proceso. setTimeout se usa principalmente cuando un bloque de código en particular debe ejecutarse después de un retraso de unos pocos milisegundos. También este tiempo definido es el tiempo mínimo de espera antes de ejecutar la función de devolución de llamada definida en el método setTimeout.

Sintaxis de Node.js setTimeout

A continuación se muestra la sintaxis:

1. setTimeout sin parámetro

setTimeout(función retrasada, delayTimeInMS);
funciónretrasadaFunción() {
//Escriba el código aquí
}
setTimeout(función () {
//Escriba el código aquí
}, retrasoTiempoEnMS)

  • Primer parámetro: Siempre debe ser la función que necesita retraso en la ejecución. La función sobre la marcha o la función definida por separado funcionan bien aquí.
  • Segundo parámetro: Es el tiempo mínimo de retardo requerido y siempre debe definirse en milisegundos.

2. setTimeout con parámetro

setTimeout(DelayedFuntion, DelayTimeInMS, param1, param2,… y así sucesivamente);
functiondelayedFuntion(param1, param2,… Y así sucesivamente) {
//Escriba el código aquí
}
setTimeout(función (param1, param2,… y así sucesivamente) {
//Escriba el código aquí
}, delayTimeInMS, param1, param2,… y así sucesivamente)

  • Primer parámetro: Siempre debe ser la función que necesita retraso en la ejecución. Es un método parametrizado y se puede definir sobre la marcha o una función definida por separado, ambas funcionan bien aquí.
  • Segundo parámetro: Es el tiempo mínimo de retardo requerido y siempre debe definirse en milisegundos.
  • Tercer parámetro: Los valores definidos a partir del tercer parámetro y así sucesivamente (4º, 5º,…) son los valores que deben pasarse en la misma secuencia en que se leerán Función retardada (1st parámetro de setTimeout). La secuencia es lo más importante aquí.

3. clearTimeout con setTimeout

vartimeoutObjectValue=setTimeout(función (param1, param2,… y así sucesivamente) {
//Escriba el código aquí
}, tiempoderetrasoEnMS);
clearTimeout(timeoutObjectValue);

  • Primer parámetro: El método clearTimeout acepta solo un parámetro y ese siempre debe ser el objeto de tiempo de espera devuelto por el método setTimeout.

¿Cómo funciona la función setTimeout en Node.js?

  • La función setTimeout ejecuta la función Callback después de la demora mencionada en milisegundos y devuelve una instancia de objeto de tiempo de espera que se puede usar para cancelar las instancias de tiempo de espera.
  • Esto es similar al tiempo de espera del navegador donde window.timeout se usa para establecer el tiempo de espera en el navegador y ejecutar el método con el retraso requerido. Es muy importante tener en cuenta que el tiempo de espera mencionado en el método setTimeout no tiene ninguna garantía proporcionada por NodeJSor JavaScript API de que exactamente después de este tiempo la función se ejecutará, es el tiempo mínimo de retraso.
  • Otra parte interesante del método setTimeout es que, en una aplicación, si se crean muchas instancias de tiempo de espera de este tipo, es una buena práctica cancelar esos tiempos de espera una vez que finaliza su uso para evitar la activación de esta instancia y también para reutilizar mismo objeto más adelante.

Ejemplo de Node.js setTimeout

Consideremos un ejemplo en el que el usuario está agregando artículos a un carrito de compras y se lo dirige a la pantalla de pago, según la política de cumplimiento de seguridad, el requisito es que una vez que el usuario esté en la página de pago durante más de 10 segundos, algunos se deben tomar medidas para evitar o cancelar el proceso de pago, ya que la pasarela de pago estará inactiva, lo que significa que debemos establecer el tiempo de espera con delayTimeInMS en 10 segundos y en la función de devolución de llamada, el código se puede escribir para mostrar una alerta, para actualizar o para volver a la página de inicio.

Ejemplo 1

Cree una aplicación simple de Node.js usando el comando npm que proporciona index.js como el punto de entrada donde se puede escribir todo el código de Node.js. Usaremos el módulo de nodo express, así que asegúrese de instalar express. Para fines de demostración, mostraremos la salida en la consola CMD.

Índice.js

Código:

var expreso=require('expreso'); //Uso del módulo de nodo express para crear el servicio
var aplicación=express();
app.get('/', function (req, res) { //Usando el método express app.get para mostrar detalles en UI
"res.writeHead(200, {Tipo de contenido: texto/html});
"res.write(''+
''+
''+
' '+
' ¡Mi página de Node.js!'+
' '+
' '+
''+
' '+
'');
res.end(); //Escribir contenido en html usando res.write
vardelayTimeInMS=10000; //Definiendo tiempo en ms
vardelayedFuntion=función () {
//Escriba el código aquí
"console.log(La página de pago superó el límite de tiempo, actualice la pantalla);
"}
setTimeout(Función retrasada, tiempo de retraso en MS);
});
aplicación.escucha(3000, función () {
console.log('¡Las aplicaciones de demostración comenzaron a escuchar en el puerto 3000!');
});

Ejemplo 2

Para iniciar la aplicación, ejecute el comando node index.js en CMD.

Ejemplo 3

Como nuestra aplicación de nodo está escuchando en el puerto 3000, una vez que CMD dice que la aplicación ha comenzado a escuchar en el puerto 300, abra la ventana de Chrome o cualquier otro navegador e inicie la aplicación local en http con el número de puerto 3000.

Ejemplo 4

En la ventana del navegador, el contenido HTML se puede representar para mostrar los detalles relacionados con el pago o solicitar información de pago que luego se redirigirá a la pasarela de pago. Para fines de demostración, solo mostramos contenido HTML simple como se muestra a continuación.

Ejemplo 5

Ahora el método setTimeout comienza a ejecutarse y cuenta el tiempo que se define en delayTimeInMS (segundo parámetro en setTimeout). Tenga en cuenta que este es el tiempo mínimo de retraso y no el tiempo exacto después del cual se ejecutará delayFuntion(1st en setTimeout).

Ejemplo 6

Siga monitoreando la consola y una vez que hayan pasado un mínimo de 10 segundos, verá que se ejecuta la función retrasada (primer parámetro en setTimeout) y se ejecuta cualquier código escrito dentro de este método. Por ejemplo, acabamos de imprimir algunas líneas en la consola, pero se puede usar para aspectos más amplios, como actualizar el contenido, navegar a la página de inicio, alertar al usuario, mostrar la ventana de tiempo de espera, etc.

Ventajas de Node.js setTimeout

A continuación se indican las ventajas mencionadas:

  • Usando el marco Node.js, el código se ejecuta de forma asíncrona, por lo que a veces surge el requisito de que la ejecución del código que es asíncrona debe mantenerse en espera durante un período de tiempo mínimo mencionado en el método setTimeout.
  • Esta se convierte en la principal ventaja de usar el método setTimeout en Node.js para que la ejecución del código, la demora en la respuesta, el procesamiento de la respuesta después de un período de tiempo, la redirección o la recarga de contenido después de que se exceda un tiempo, etc. Todo se puede lograr usando el método setTimeout.

Conclusión

El método setTimeout de Node.js se puede usar en varios lugares en el código javascript donde el usuario necesita que se realice alguna operación después de un retraso de tiempo. Como javascript tiene un solo subproceso, el uso de setTimeout permite que el subproceso ejecute otros eventos que están esperando en la cola y hace que la ejecución sea más rápida. Asegúrese de que al usar setTimeout en los bucles, a veces puede ser complicado y, a veces, se puede usar con bastante facilidad.En conjunto, Timeout es un método muy útil en Node.js y se puede usar en todas las aplicaciones sin líneas de código importantes.

Artículos recomendados

Esta es una guía para Node.js setTimeout. Aquí discutimos la introducción a Node.js setTimeout, cómo funciona la función setTimeout con ejemplos de programación y ventajas. También puede echar un vistazo a los siguientes artículos para obtener más información -

  1. Nodo js REPL
  2. Proceso Node.js
  3. Arquitectura Nodejs
  4. Proceso secundario de Node.js

¡Ayuda al desarrollo del sitio, compartiendo el artículo con amigos!