Maison >interface Web >js tutoriel >Comment utiliser « setInterval » et « clearInterval » pour l'exécution de fonctions contrôlées ?
Comment contrôler les intervalles avec setInterval et clearInterval
Dans le contexte de la gestion des événements clavier, une question se pose sur l'utilisation appropriée de setInterval et clearInterval pour gérer l'exécution d'une fonction. Explorons les différences entre ces méthodes.
setInterval : configuration de minuteries récurrentes
setInterval établit une minuterie qui exécute une fonction à plusieurs reprises à un intervalle spécifié en millisecondes. Par exemple, le code suivant configure une minuterie pour appeler la fonction drawAll() toutes les 20 millisecondes :
setInterval(drawAll, 20);
Cependant, si vous avez l'intention d'appeler la fonction une seule fois, l'utilisation de setInterval n'est pas idéale, car elle crée une boucle continue. Pour éviter cela, vous pouvez utiliser clearInterval.
clearInterval : Annulation des minuteries
clearInterval vous permet d'arrêter une minuterie récurrente. Il accepte un handle renvoyé par setInterval comme argument. En réglant la poignée sur 0, vous pouvez annuler la minuterie et l'empêcher de se déclencher davantage :
var handle = setInterval(drawAll, 20); // When you want to cancel it: clearInterval(handle); handle = 0;
Utiliser setTimeout pour une exécution unique
Si vous en avez besoin pour planifier une fonction à exécuter une seule fois, utilisez plutôt setTimeout. Il offre des fonctionnalités similaires mais ne crée pas de boucle récurrente. Le code suivant appelle la fonction drawAll() une fois après un délai de 20 millisecondes :
setTimeout(drawAll, 20);
N'oubliez pas que setInterval convient à la création de minuteries qui exécutent une fonction de manière répétée, tandis que clearInterval est utilisé pour arrêter ces minuteries. D'un autre côté, setTimeout est utilisé pour planifier le déclenchement d'une fonction une seule fois après un délai spécifié.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!