JavaScript Set récursifTimeout


Exemple

Pour répéter une fonction indéfiniment, setTimeout peut être appelé récursivement:

function repeatingFunc() {
    console.log("It's been 5 seconds. Execute the function again.");
    setTimeout(repeatingFunc, 5000);
}

setTimeout(repeatingFunc, 5000);

Contrairement à setInterval , cela garantit que la fonction s'exécutera même si le temps d'exécution de la fonction est plus long que le délai spécifié. Cependant, il ne garantit pas un intervalle régulier entre les exécutions de fonctions. Ce comportement varie également car une exception avant l'appel récursif à setTimeout l'empêche de se répéter, alors que setInterval se répète indéfiniment, quelles que soient les exceptions.