javascript中用%判断奇偶:n%2===0为偶数,n%2为真值(1或-1)为奇数;需确保操作数为整数,推荐封装为布尔变量或用boolean转换。

在 JavaScript 中,用求余运算符 % 判断奇偶数是最常用、最直接的方法:一个整数对 2 取余,结果为 0 就是偶数,结果为 1(或 -1)就是奇数。
基本判断逻辑
核心原理是:任何整数 n 除以 2 的余数只有三种可能——0、1 或 -1(负数取余时 JS 会保留被除数符号)。但实际判断奇偶只需关注是否为 0:
-
n % 2 === 0→ 偶数(包括 0 和负偶数,如-4 % 2 === 0) -
n % 2 !== 0→ 奇数(涵盖正奇数如3 % 2 === 1,也涵盖负奇数如-3 % 2 === -1)
推荐的写法:用 Boolean 转换更安全
避免直接用 === 1 判断奇数(因为 -3 % 2 是 -1,不等于 1),推荐用「是否不等于 0」或利用 JavaScript 的真值特性:
-
if (n % 2) { /* 奇数 */ }—— 因为1和-1都是真值,0是假值 -
if (n % 2 === 0) { /* 偶数 */ }—— 明确、可读性强,推荐用于条件分支 -
const isEven = n % 2 === 0;—— 封装成布尔变量,语义清晰
注意边界和类型问题
求余运算符只对数字有效,使用前建议确保操作数是安全的整数:
- 非数字(如字符串
"5")会尝试隐式转换:"5" % 2得1,但"abc" % 2得NaN - 小数也会参与运算:
4.5 % 2是0.5,不是整数奇偶判断场景,应先取整(如Math.floor(n) % 2或~~n % 2) - 可加简单防护:
Number.isInteger(n) && n % 2 === 0,确保只处理整数
实用小例子
快速筛选数组中的奇数:
[1, 2, 3, 4, 5].filter(n => n % 2); // [1, 3, 5]
给列表项按奇偶添加不同 class:
items.map((item, i) =>
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











