2015-11-01 69 views
-5

爲什麼我的循環在數字爲0時停止?

function enigma(inputValue) { 
 
    var i = 0; 
 
    while (inputValue) { 
 
    if (++i == 5) inputValue = 0; 
 
    } 
 
    return i; 
 
} 
 
var whatAmI = enigma(5); 
 
console.log(whatAmI);
<div>Hit F12 and go to the console to view output.</div>

我得到的輸出是5

爲什麼的JavaScript停止循環,如果inputValue等於0?這是因爲我沒有將它指定爲while循環中的條件?

+0

你指定了什麼條件? – melpomene

+0

inputvalue是我在while循環中的條件。 – Mocrosoft

+0

什麼時候'inputValue'變成false? – melpomene

回答

0

0是錯誤的。您可以check here

+0

謝謝你,我從來不知道值0在JavaScript中被看作是一個錯誤。 – Mocrosoft

+1

從邏輯上說0總是假的,1是真的 –

+0

@Mocrosoft你可以在這裏閱讀更多關於JavaScript布爾值的信息:http://www.w3schools.com/js/js_booleans.asp –