实现isinteger js
isinteger 的实现方法
在 JavaScript 中,可以通过多种方式判断一个值是否为整数。以下是几种常见的方法:
方法一:使用 Number.isInteger()
这是最直接的方法,ES6 引入了 Number.isInteger() 方法,专门用于判断一个值是否为整数。
Number.isInteger(42); // true
Number.isInteger(42.0); // true
Number.isInteger(42.1); // false
Number.isInteger('42'); // false
方法二:使用取模运算符 (%)
通过检查数字对 1 取模是否为 0 来判断是否为整数。
function isInteger(num) {
return typeof num === 'number' && num % 1 === 0;
}
isInteger(42); // true
isInteger(42.1); // false
方法三:使用 Math.round() 或 Math.floor()
比较原始值与四舍五入后的值是否相等。
function isInteger(num) {
return typeof num === 'number' && Math.floor(num) === num;
}
isInteger(42); // true
isInteger(42.1); // false
方法四:使用位运算符
利用位运算符会将操作数转换为 32 位整数的特性。
function isInteger(num) {
return (num | 0) === num;
}
isInteger(42); // true
isInteger(42.1); // false
注意事项

- 方法二、三、四需要额外检查输入是否为数字类型,避免字符串等非数字类型被误判。
- 方法四对于超过 32 位的整数可能不准确。
- 方法一是最推荐的方式,简洁且准确,但需要注意浏览器兼容性(IE 不支持)。






