如何在函数中编写 if/else 语句,告诉我一个数字是否可以被 2 整除(在 javascript 中)

How do I write an if/else statement inside a function that tells me if a number is evenly divisible by 2 (in javascript)

本文关键字:是否 数字 一个 javascript 整除 告诉我 函数 if 语句 else      更新时间:2024-02-01

我正在通过codacademy工作,我无法理解论坛中的帮助讨论。

这就是我到目前为止所拥有的,但是当我使用偶数运行函数时,它会返回 false:

var isEven = function(number) {
 if (isEven % 2 == 0){
  return true;
 }else{
  return false;
 }
};

您正在对isEven(函数本身(执行数学运算。您需要检查number

var isEven = function(number) {
    if (number % 2 === 0) {
        return true;
    } else {
        return false;
    }
};

或者更好的是:

var isEven = function(number) {
    return number % 2 === 0;
};

您甚至可以通过使用10的真实/虚假行为来做到这一点:

var isEven = function(number) {
    return !(number % 2);
};

但我认为之前的方法更清楚地传达了逻辑的工作原理。

你可以按如下方式编写这个函数:

var isEven = function(number) {
 return ((number % 2) == 0);
}

您的函数不起作用,因为您正在检查函数名称,而不是函数参数(数字(。试试这个:

var isEven = function(number) {
    return number % 2 == 0;
}

你在isEven本身做错了。像..

var isEven = function(number) {
    return number% 2 == 0;
}

请考虑以下事项:

  • 0被认为是Javascript中false的。
  • 1被认为是Javascript中true的。
  • !使false变得true,反之亦然。
  • %运算符可用于将较大的数字保持在 0 到 1 的范围内。

由于0 % 2给出了0(即 false (,1 % 2给出1(即 true (,您只需用 ! 反转结果:

function isEven(x) { return !(x % 2); }
console.log(isEven(0));  // true
console.log(isEven(1));  // false
console.log(isEven(2));  // true
console.log(isEven(3));  // false

请注意,这也可以写成:

function isEven(x) { return (x % 2) == 0; }

。因为:

  • 0 % 20(所以说它等于零是true的(。
  • 1 % 21(所以说它等于零是false的(。