【问题标题】:function numberIsEven if statement函数 numberIsEven if 语句
【发布时间】:2019-02-27 12:17:18
【问题描述】:

我正在开发一个 Web 开发课程开始阶段的模块。我从高处到低处都找遍了,找不到我遗漏的那一块拼图。说明如下:

在 numberIsEven 函数中为给定的 num 参数创建一个 if/else if/else 语句。如果 num 是偶数,则返回 true。如果和为奇数,则返回 false。

代码编辑器已启动:

function numberIsEven(sum){
// Check if num is Even, Odd, or Neither 

}

这是我尝试过的众多方法之一。

function numberIsEven(sum){
// Check if num is Even, Odd, or Neither 
if (sum%2 === 0){
  return "True";
} else if (sum%2 !== 0){
  return "False";
} else {
  return "Neither";
 }
}

当我运行 if/else if/else 语句时,我不断得到 >>undefined。我需要调用一个变量,该变量将在输入时更改函数,但我不确定如何构造条件来执行此操作,如果它不是 sum 将确定计算机是否说它是 true、false 或两者都不是。

任何帮助将不胜感激。

【问题讨论】:

  • 你是如何调用函数的?顺便说一句,您的代码只会返回TrueFalse,永远不会返回Neither - 因为强制
  • 看起来很奇怪一个整数不会是偶数或奇数
  • @epascarello 也许是零?
  • 零是,按照这个逻辑,真@dippas - 就像false''nulltrueundefined 和任何对象都是假的
  • 是的,@Jaromanda X,所以我和 epascarello 在一起

标签: javascript function if-statement conditional


【解决方案1】:

numberIsEven 函数内为给定的 num 参数创建一个 if/else if/else 语句。如果 num 是偶数,则返回 true。如果 num 为奇数,则返回 false

NB 我认为你的问题最后一行会这样如果 num 是奇数(不是 sum 是奇数),返回 false .

对于if/else if/else 这样做,

function numberIsEven(num) {
  if (isNaN(num)) {
    return 'Neither';
  } else if (num % 2 === 0) {
    return true;
  } else {
    return false;
  }
}

console.log(`10 is even = ${numberIsEven(10)}`)
console.log(`11 is even = ${numberIsEven(11)}`)
console.log(`'9' is even = ${numberIsEven('9')}`)
console.log(`'Hello' is even = ${numberIsEven('Hello')}`)
console.log(`undefined is even = ${numberIsEven()}`)

【讨论】:

  • 那么,return num%2 === 0; 然后
  • 正如我在 cmets 中所说的课程说明中指出:Create an if/else,所以你原来的方式达到了目标。
  • 问题要求if / else if / else,因此暗示了三个可能的返回值!!
  • 哇!你们明白了。我错过了如何指示计算机读取 NaN,以及我认为如果所有 3 个(如果、否则如果、否则)所有返回都必须是字符串,因为它不是布尔值。很高兴知道事实并非如此。谢谢(:
  • if (num % 2 === 0) { 适用于 null false'' 例如...首先检查 NaN
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-21
  • 2020-07-05
  • 2021-11-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多