Quelle est la principale différence entre
et
en JavaScript?
setTimeout(expression, timeout);
exécute le code / la fonction une fois le délai écoulé.
setInterval(expression, timeout);
exécute le code / la fonction par intervalles, avec la durée du délai entre eux.
Exemple:
var intervalID = setInterval(alert, 1000); // Will alert every second.
// clearInterval(intervalID); // Will clear the timer.
setTimeout(alert, 1000); // Will alert once, after a second.
setInterval
déclenche encore et encore par intervalles , tandis que setTimeout
ne se déclenche qu'une fois.
Voir la référence à MDN .
setTimeout ():
C'est une fonction qui exécute une instruction JavaScript AFTER
x interval.
setTimeout("do.something();", 1000); //Execute do.something() 1 second later.
setInterval ():
C'est une fonction qui exécute une instruction JavaScript EVERY
x interval.
setInterval("do.somethingElse();", 2000); //Execute do.somethingElse() every 2 seconds.
L'unité d'intervalle est en millisecond
pour les deux fonctions.
setInterval est un intervalle de temps basée sur l'exécution de code à la méthode qui a la capacité native à plusieurs reprises d'exécuter le script spécifié lorsque l'intervalle est atteint. Il ne devrait pas être imbriqués dans sa fonction de rappel par l'auteur du script pour faire tourner en boucle, depuis il fait une boucle par défaut. Il va continuer à tirer à l'intervalle sauf si vous appelez la fonction clearInterval().
si vous souhaitez faire une boucle de code pour les animations ou les horloges Puis utiliser setInterval.
function doStuff() {
alert("run your code here when time interval is reached");
}
var myTimer = setInterval(doStuff, 5000);
setTimeout est une base de temps d'exécution de code à la méthode qui va exécuter le script qu'une seule fois lorsque l'intervalle est atteint, et de ne pas répéter à nouveau, sauf si vous vous préparez à boucle, le script par l'imbrication des setTimeout objet à l'intérieur de la fonction, il appelle à exécuter. Si orientée vers la boucle, il va continuer à tirer à l'intervalle, à moins que vous appelez clearTimeout().
function doStuff() {
alert("run your code here when time interval is reached");
}
var myTimer = setTimeout(doStuff, 5000);
si vous voulez que quelque chose se produise une fois après quelques secondes Ensuite utiliser setTimeout... parce qu'il n'exécute qu'une seule fois lorsque l'intervalle est atteint.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.