簡體   English   中英

isif語句中的isNan幫助

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM