Maison >interface Web >js tutoriel >js timeout appel setTimeout et appel intermittent setInterval instance Analysis_javascript compétences
Cet article analyse l'utilisation de l'appel de délai d'attente js setTimeout et de l'appel intermittent setInterval. Partagez-le avec tout le monde pour votre référence. Les détails sont les suivants :
J'ai lu le livre JavaScript Advanced Programming (troisième édition) aujourd'hui et j'ai découvert que setTimeout est meilleur que setInterval, et je pense que c'est vrai. J'utilise généralement davantage setInterval, mais maintenant je dois changer d'avis. J'ai encore appris. L'analyse est la suivante :
setTimeout contient deux paramètres, le premier paramètre est le code à exécuter et le deuxième paramètre est l'heure.
Le premier paramètre peut être une chaîne ou une fonction, mais il est recommandé d'utiliser des fonctions plutôt que des chaînes.
L'utilisation de chaînes équivaut à la méthode eval. entraînant une perte de performances.
clearTimeout()
Le code appelé avec timeout est exécuté dans la portée globale, donc la valeur de this dans la fonction pointe vers l'objet window en mode strict, et n'est pas définie en mode strict
var num = 0;
var max = 10;
var intervalId = null;
fonction incrémentNuméro(){
num ;
si(num == max){
clearInterval(innervalId);
alert('done');
>
>
intervalId = setInterval(incrementNumber(),500);
//setTimeout implémente la même fonction
var num = 0;
var max = 10;
fonction incrémentNuméro2(){
num ;
si(num
}autre{
alert('done');
>
>
setTimeout(incrementNumber2,500);
La comparaison ci-dessus montre que lors de l'utilisation d'appels de délai d'attente, il n'est pas nécessaire de suivre l'identifiant de l'appel de délai d'attente, car après chaque exécution du code, si un autre appel de délai d'attente n'est pas défini, l'appel s'arrêtera de lui-même.
On pense généralement que si les appels avec délai d'attente sont utilisés pour simuler des appels intermittents, c'est le meilleur mode.
Dans un environnement de développement, les véritables appels intermittents sont rares car un appel intermittent ultérieur peut démarrer avant la fin de l'appel intermittent précédent.
Il est préférable de ne pas utiliser d'appels intermittents.
J'espère que cet article sera utile à la conception de la programmation JavaScript de chacun.