📜  javascript中的偶数或奇数(1)

📅  最后修改于: 2023-12-03 15:01:47.667000             🧑  作者: Mango

JavaScript中的偶数或奇数

在JavaScript中,判断一个数是偶数还是奇数有很多种方法。本文将为大家介绍一些通用的方法以及一些更加高效的方法。

通用方法
使用取余运算符(%)

取余运算符可以用来计算一个数对另一个数的余数。对于偶数,它们对2取余的结果为0,而对于奇数,它们对2取余的结果为1。因此,通过判断一个数对2取余的结果是否等于0,我们就可以判断这个数是偶数还是奇数。

function isEven(num) {
  return num % 2 === 0;
}
使用位运算符(&)

位运算符可以用来处理数字的二进制位。对于偶数,它们的最后一位是0,而对于奇数,它们的最后一位是1。通过使用位运算符(&)将给定数与1相与,我们就可以得到这个数的最后一位。如果它是0,那么这个数就是偶数,否则就是奇数。

function isEven(num) {
  return (num & 1) === 0;
}
使用Math对象

JavaScript内置了一个Math对象,它包含了许多有用的函数。其中一个函数是abs(),可以用来返回一个数的绝对值。对于偶数和奇数,它们和它们各自的负数具有相同的绝对值。因此,我们可以使用abs()函数将给定数转换为正数,然后再判断它是否为偶数。

function isEven(num) {
  return Math.abs(num) % 2 === 0;
}
更加高效的方法

使用位运算来判断奇偶性是最快的方法。然而,它只适用于整数。如果我们需要判断一个小数是否为偶数或奇数,我们可以使用以下方法:

使用三目运算符

使用三目运算符可以让我们在一行代码中完成判断。对于奇数,我们将给定数减去1,然后将结果除以2。对于偶数,我们将给定数除以2。

function isEven(num) {
  return num % 1 === 0 ? (num % 2 === 0 ? true : false) : false;
}
使用Math.floor()

Math.floor()函数可以向下取整一个数字,即将它变成一个整数。对于奇数,我们将给定数减去1,然后使用Math.floor()函数将结果除以2。对于偶数,我们直接使用Math.floor()函数将给定数除以2。

function isEven(num) {
  return num % 1 === 0 ? (Math.floor(num / 2) === num / 2 ? true : false) : false;
}
结论

使用取余运算符或位运算符是判断偶数或奇数的通用方法。如果我们需要判断小数的奇偶性,可以使用三目运算符或Math.floor()函数。选择哪种方法取决于我们的代码要求的速度和精确度。