我是編程新手,所以請不要苛刻我的技能。無論如何,這是我的代碼,我試圖做一個簡單的倒計時循環。我的JavaScript循環是一個無限循環?
var number = 30;
var countdown = true;
while(countdown === true) {
subtract();
if(number === 0) {
countdown = false;
}
}
function subtract() {
setTimeout(function() {
console.log(number);
number = number - 1;
}, 1000);
}
我做錯了什麼?
'的setTimeout()'排隊功能最多稍後執行,但_doesn't暫停當前function._的執行,因此您的超時可能會發生,直到_after_ while循環結束 - 它永遠不會因爲它正在測試在超時設置的值... – nnnnnn
看看你的cpu使用情況,同時運行此代碼;)while while循環是一個資源豬。 – andrew