Question

Juste suis tombé sur ce. Il est sans incidence sur quoi que ce soit vraiment, mais je me demande pourquoi ça se passe.

Si je lance le code suivant dans Firefox avec Firebug sur:

setInterval(function(param) 
     {
        console.log("param is %o",param)
     },500);

param semble attribuer une valeur vaguement aléatoire:

   param is -2
    param is -1
    param is -2
    param is 1
    param is -1
    param is 6
    param is -1
    param is 0
    param is -2
    param is 2
    param is 0
    param is 2
    param is 0
    param is 0
    param is 0
[..]
    param is 0
    param is 0
    param is 0
    param is 0
    param is 0
    param is 0
    param is 0
    param is 911
    param is 0
    param is 0
    param is 0
    param is -1

Je ne comprends que je ne passe aucun argument à setInterval de transmettre à la fonction, mais pourquoi javascript choisit de passer ce nombre aléatoire?

Je me serais attendu non défini ou quelque chose comme ça ...

Vive

p.s. Je n'ai pas testé dans d'autres navigateurs

Était-ce utile?

La solution

Il semble dépendre de l'utilisation du processeur de Firefox.

Je suppose que c'est le retard entre le rappel aurait été appelé.

EDIT : j'avais raison . Il est le nombre de millisecondes fin le rappel a été appelé.

Autres conseils

il est un ID intervalle défini automatiquement par window.setInterval. si vous stockez le résultat, vous pouvez effacer plus tard l'intervalle (pour l'arrêter)

var intID = window.setInterval( function(){ alert("I'm annoying!"); }, 10000 );

// this will kill it before it annoys you, :D
window.clearInterval( intID );

est également le cas window.setTimeout:

var timeID = window.setTimeout( function(){ alert("I'm annoying!"); }, 10000 );

// this will kill it before it annoys you, :D
window.clearTimeout( timeID );
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top