[英]Javascript function to check for even/odd numbers
我試圖在JavaScript中創建一個函數,該函數可以判斷數字是否為偶數或根本不是數字。 我收到此錯誤:
這是在CodeCademy中的一課。
您正在檢查函數isNaN
存在,而不是數字是否為isNaN(number)
類的NaN
。
盡管帶有內容的字符串是真實的,但結果對於任何數字都是正確的。
isNaN是一個函數,因此您的else if(isNaN)應該始終為true,因為isNaN是有效函數。 嘗試else if (isNaN(number))
,在嘗試取模之前,您可能應該檢查isNaN,因為如果輸入字符串,當您嘗試獲取字符串模塊時,它將立即出錯。
您正在返回一個字符串。
else if(isNan){
return "Whatever";
}
您只是在告訴javascript將值“ isNan”作為值而不是函數。 要將其評估為功能,必須使用它進行如下調用 :
else if(isNan(yourNumber)){
return true;
}
順便說一句,當您嘗試像以前一樣將函數評估為值時,如果該函數不是未定義或為null,則javascript將始終返回true。
這是因為
else if(isNaN)
將為true
並返回"This is not a number"
並且此字符串將被視為true。 在這里,您要檢查isNaN
是否定義為一個函數,當然要定義一個函數,因此您應該檢查number是否為有效數字。
相反,你應該做
else if(isNaN(number))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.