Maison >interface Web >js tutoriel >Pourquoi mon rappel setInterval ne s'exécute-t-il qu'une seule fois ?

Pourquoi mon rappel setInterval ne s'exécute-t-il qu'une seule fois ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-03 20:10:16384parcourir

Why Does My setInterval Callback Only Run Once?

Pourquoi le rappel setInterval s'exécute-t-il une seule fois ?

En JavaScript, la fonction setInterval() est utilisée pour exécuter une fonction à des intervalles spécifiés . Cependant, si vous rencontrez un problème où la fonction de rappel ne s'exécute qu'une seule fois, cela peut être dû à une utilisation incorrecte des paramètres.

Utilisation incorrecte de l'appel de fonction

Dans le code fourni, vous exécutez directement la fonction timer() comme premier paramètre de setInterval() :

window.setInterval(timer(), 1000);

Cela invoquera immédiatement la fonction timer() et transmettez sa valeur de retour à setInterval(). Au lieu de cela, vous devez utiliser une référence de fonction :

window.setInterval(timer, 1000);

Vous pouvez également créer une fonction anonyme à exécuter à l'intervalle spécifié :

window.setInterval(function() {
  console.log("timer!");
}, 1000);

En utilisant une référence de fonction ou une fonction anonyme , setInterval() appellera votre fonction à plusieurs reprises à l'intervalle spécifié, vous permettant d'exécuter le compteur indéfiniment.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn