[英]isNan help in an if else statement
我正在進行在線練習,並且需要使用if else語句。 isNaN語句不起作用。 如果輸入的數字不是實際數字,我需要返回一個字符串。 這不會編譯,請幫助:
var isEven = function(number) {
if (number % 2 === 0) {
return true;
} else if (number % 2 !== 0) {
return false;
} else if (isNaN(number)) {
return "you need to enter a number";
} else {
return false;
}
};
您的代碼由於以下原因而返回false
else if (number % 2 !== 0)
行,所以在一切都這樣之前檢查isNaN
var isEven = function(number) {
if (isNaN(number)) {
return "you need to enter a number";
} else {
if (number % 2 === 0){
return true;
} else if (number % 2 !== 0) {
return false;
}
}
};
console.log(isEven(NaN));
you need to enter a number
您需要先擁有isNan
作為if-else-if條件。
說明:
如果參數不是數字,則number % 2 !== 0
將為true,並將返回該值。
注意:return語句,進一步終止函數的執行並返回值。 因此,即使這里不需要-else-if。
並提防NaN中的布爾值和空字符串。
示例片段:
var isEven = function(number) { if (isNaN(number)) { return "you need to enter a number"; } if (number % 2 === 0) { return true; } else { return false; } }; console.log(isEven(2)); console.log(isEven(3)); console.log(isEven('i am not a number')); console.log(isEven(true));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.