以 JS 为例,目前想到的有以下几种:
- 正经解法:
return !(num % 2) - 不正经解法:
return /^\d*[24680]$/.test(num) // 或者 !/^\d*\.5$/.test(num/2) return !(num & 1) // 或者 ~num & 1 return num >> 1 << 1 == num 还有什么骚操作?

以 JS 为例,目前想到的有以下几种:
return !(num % 2) return /^\d*[24680]$/.test(num) // 或者 !/^\d*\.5$/.test(num/2) return !(num & 1) // 或者 ~num & 1 return num >> 1 << 1 == num 还有什么骚操作?
递归写法:
function isEven(n) { return n == 0 ? true : (n == 1 ? false: isEven(Math.abs(n - 2))); } 异或写法:
return (n ^ 1) == n + 1; 1 shintendo Sep 14, 2020 npm install is-even |
2 BingoXuan Sep 14, 2020 好像直接看二进制的话,1 的 bit 必定为 1 |
6 pushback Sep 14, 2020 温两碗酒,要一碟茴香豆! |
7 ipengxh OP 又想起来了 |