JavaScript Number.isInteger() 语法
Number.isInteger() 是 JavaScript Number 对象的一个静态方法,它用于判断某个值是否为整数。
语法:
Number.isInteger(value)说明:
Number.isInteger() 方法接收单个参数。
value(必选):表示要判断的值。
Number.isInteger() 会返回一个布尔值,即 true 或 false。如果给定值为整数,则 Number.isInteger() 返回 true;如果给定值为非整数(如浮点数、其他类型),则 Number.isInteger() 返回 false。
注意: isInteger() 是一个静态方法,它只能被类名(即 Number)调用,而不能被实例调用。
JavaScript Number.isInteger() 摘要
| 属于 | JavaScript Number 对象 |
|---|---|
| 使用频率 | 高 |
| 官方文档 | 查看 |
| MDN | 查看 |
JavaScript Number.isInteger() 示例
接下来,我们通过一个简单的例子来讲解 JavaScript Number.isInteger() 是如何使用的。
示例 1:Number.isInteger() 基本用法
// 1. 正常的整数
console.log(Number.isInteger(0)); // true
console.log(Number.isInteger(666)); // true
console.log(Number.isInteger(-10)); // true
// 2. 看起来像浮点数,但实质是整数的情况
console.log(Number.isInteger(5.0)); // true (重点!5.0 等于 5)
// 3. 非整数情况
console.log(Number.isInteger(3.14)); // false
console.log(Number.isInteger(Math.PI)); // false
// 4. 非数值类型(新手易错区)
console.log(Number.isInteger('10')); // false (字符串不是整数)
console.log(Number.isInteger(true)); // false
console.log(Number.isInteger([1])); // false
// 5. 特殊值
console.log(Number.isInteger(Infinity)); // false
console.log(Number.isInteger(NaN)); // false运行结果如下。
true
true
true
true
false
false
false
false
false
false
falseNumber.isInteger() 和 Number.isSafeInteger()
只有值在 -(2^53-1) 到 2^53-1 之间的整数,Number.isSafeInteger() 才会返回 true。而对于 Number.isInteger() 来说,只要是整数,它都会返回 true。
示例 2:Number.isInteger() vs Number.isSafeInteger()
const n = 2**53;
console.log(Number.isInteger(n));
console.log(Number.isSafeInteger(n));运行结果如下。
true
false