Una función sleep
Problema:
Función sleep en JS
Las instrucciones de un programa habitualmente se ejecutan en forma secuencial, aunque se pueden crear procesos asíncronos que se ejcuten sin detener el código principal o en paralelo.
Pero ¿y si queremos detener el código un cierto tiempo? ¿Existe alguna función sleep en Javascript?
Solución
Usa una función await
Javascript provee de un mecanismo muy simple para lograr este comportamiento await ya su nombre lo dice todo: esperar
Ejemplo
En este ejemplo retrasamos casa iteración del bucle en 100ms
async function sleep(t){
await new Promise(resolve => setTimeout(resolve, t));
}
for(let i = 01; i < 5; i++){
await sleep(100));
console.log(i);
}
console.log("Y se acabó");
En este código de ejemplo la función sleep logra detener cada iteración en 100ms. Veras como los números aparecen a intervalos de 100ms