Estoy tratando de hacer un bucle de una función con un setInterval y luego, cuando se alcanza una condición:
¿Cuál es la mejor manera de hacerlo en Javascript? Tengo algo como esto:
var refreshId = setInterval(Myfunction, 5); function Myfunction(){ ---do something--- if (conditionIsHitted){ externalFunction();} } ---resume the setInterval loop againno puede "pausar" un intervalo establecido. ni un setTimeout. pero puede detenerlo y volver a iniciarlo más tarde. como comenzar con un tiempo de espera de 10 segundos. detenerlo 2 segundos más tarde. y reinícielo más tarde con un tiempo de espera de 8 segundos.
// run something after 10 sec - will never actually be runned, because stopped later let timeout = setTimeout(function() { console.log('10 sec elapsed'); }, 10000); // stop after 2 seconds and relaunch the work to be done setTimeout(function() { clearTimeout(timeout); setTimeout(function() { console.log('10 sec elapsed'); }, 8000); }, 2000);