2017-02-27 25 views
-2

在這裏,我再次。這顯然是我知道如何學習的唯一方法。我正在做的是做一個for循環。是。一些如此簡單。然而,我「」與他們的問題。無限循環的問題或多或少。我需要做的是做一個從10 ... 0倒數的循環。對你們中的一些人來說似乎很容易。是的,我非常清楚。我只是一個學生學習。無限循環顯然是棘手的。

這是我的代碼:

 for (var i = 11; i >= 1; i++) { 
    console.log(i); 
    } 

我停留在這一點上。它所做的只是每次都會使瀏覽器崩潰。非常感謝幫助。我想徹底解釋我做錯了什麼,我應該做什麼,以及爲什麼我可能會比需要做得更難。謝謝!

+0

那麼爲什麼你正在增加我?並不總是大於1? – RSon1234

+0

你是什麼意思?哦,在最後?我++? –

+0

如果你從11開始,並且你正在使用i ++,那麼你告訴我它何時會停止?你希望它在i> = 1時循環。你的情況下,我何時> = 1是不正確的。 – RSon1234

回答

0

每個人不同的學習!在這種情況下,您要求代碼使用++語法增加(又名add)。所以,如果i = 1,之後i++i = 2。同樣i--i遞減(aka減去)。

現在,循環的前兩部分檢查值i並繼續操作。在你的情況,你問的程序set i equal to 10. If i is greater than 1, add 1 to it.這就是你得到無限循環,因爲i將永遠大於1.你想要的是。 for (var i = 10; i >= 0; i--) {//code here};

您還可以查看whiledo/while循環。

+0

我不明白這個循環是如何檢查我是否大於11.這是一個錯誤。 – RSon1234

+0

你說得對。抱歉。我改變它,所以它從10 - > 0遞減。 – aberkow

+0

不是指那個。你說「如果我大於11」 – RSon1234

0

變量i從11開始,然後每增加一個循環。既然條件是i> = 1,它永遠不會結束。你需要去改變它,使我由一個每個迴路遞減,就像這樣:

for (var i= 11; i>=1; i--){ 
1

對於一個循環運行從100迭代i應在每次迭代遞減。但是你正在增加它,所以for loop永遠不會終止。

for (var i = 10; i>=0; i--) { 
 
    console.log(i); 
 
}

0

首先,您需要了解增量和減量之間的差異。 增量意味着將特定值添加到變量 而另一方面遞減意味着將變量的值減少某個特定數字。

現在你的情況i++意味着要添加1到您的變量i與循環的每個迭代,而結束循環您已設置的條件i>=1

這會導致一個無限循環,其崩潰瀏覽器,因爲i永遠不會等於1i>=1永遠不會如此,因爲每次迭代時i的值都會增加1數字,所以它會繼續執行,直到您的瀏覽器崩潰。

你所尋找的是:

for (var i = 10; i >= 0; i--) { 
    console.log(i); 
} 

現在i10 開始,將逐步減少到0和你的循環將結束。

希望解釋一下。