JavaScript Guidebook

JavaScript 完全知识体系

isFinite

isFinite() 函数用于判断指定数字是否是有限值。如果指定的数字为 NaNInfinity-Infinity,则返回 false,其他数字均返回 true

该函数属于 Global 对象,所有主流浏览器均支持该函数。

语法

isFinite(number);
参数类型说明
numberNumber 类型需要检测的值

如果参数number 不是 Number 类型(如字符串、函数等),也返回 false

isFinite() 函数的返回值是 Boolean 类型。

  • 当指定的数字为 NaN、正无穷、负无穷时,返回 false
  • 除上述三种 Number 类型外的数字均返回 true

示例

// false situation
isFinite(NaN);
// false
isFinite(Infinity);
// false
isFinite(-Infinity);
// alse
// true situaton
isFinite(0);
// true
isFinite(2e64);
// true
isFinite('0');
// true
// extraordinary
Number.isFinite(null);
// false
Number.isFinite('0');
// false

和全局的 isFinite() 函数相比,Number.isFinite() 不会强制将一个非数值的参数转换成数值,这就意味着,只有数值类型的值,且是有限值,才返回 true