2010-06-15 3 views
6

J'essaie de consigner le changement d'une valeur dans la console (Firefox/Firefly, mac).Journal de la console javascript simple (FireFox)

if(count < 1000) 
{ 
    count = count+1; 
    console.log(count); 
    setTimeout("startProgress", 1000); 
} 

Cela renvoie uniquement la valeur 1. Il s'arrête après cela.

Est-ce que je fais quelque chose de mal ou est-ce que quelque chose d'autre affecte cela?

+10

Vous ne devriez pas passer une chaîne 'setTimeout'. – SLaks

+0

@SLaks: +1. Serait + (> 1) si je pouvais. –

+0

@SLaks: http://www.w3schools.com/js/js_timing.asp Ai-je tort? –

Répondre

10

Vous n'avez pas de boucle. Seulement une déclaration conditionnelle. Utilisez while.

var count = 1; 
while(count < 1000) { 
     count = count+1; 
     console.log(count); 
     setTimeout("startProgress", 1000); // you really want to do this 1000 times? 
} 

Mieux:

var count = 1; 
setTimeout(startProgress,1000); // I'm guessing this is where you want this 
while(count < 1000) { 
    console.log(count++); 
} 
+0

Merci pour la réponse rapide, Ken! –

+0

Cela a fait l'affaire, mais le délai d'attente ne fonctionne pas ... une idée? –

+0

Je suppose que vous voulez éteindre ça avant la boucle? Je ne sais pas ce que vous essayez d'accomplir, car je ne sais pas ce que startProgress est censé être. Je suppose que vous voulez dire que c'est un appel de fonction? –

1

Je pense que vous cherchez boucle while il:

var count = 0; 
while(count < 1000) { 
    count++; 
    console.log(count); 
    setTimeout("startProgress", 1000); 
} 
1

Comme les autres réponses suggèrent, if vs while est votre problème. Cependant, une meilleure approche serait d'utiliser setInterval(), comme ceci:

setinterval(startProcess, 1000); 

Cela ne s'arrête pas à 1000 appels, mais je suppose que vous faites juste que pour des fins de test en ce moment. Si vous avez besoin de cesser de le faire, vous pouvez utiliser clearInterval(), comme ceci:

var interval = setinterval(startProcess, 1000); 
//later... 
clearInterval(interval); 
+0

Je ne suis pas sûr de ce qu'il essaie de faire, mais +1. –

Questions connexes