JavaScript 检查值是否为数字

17 Mar 2025 | 5 分钟阅读

本文将介绍 JavaScript 中如何检查值是否为数字。

有多种方法可以用来检查一个值是否为数字。方法如下:

我们将逐一详细讨论每种方法。

  • 使用 typeof() 运算符
  • 使用 isNaN() 方法
  • 使用 Number.isFinite() 方法
  • 使用 Number.isInteger() 方法

我们将逐一详细讨论每种方法。

使用 typeof() 运算符

typeof() 运算符返回变量的类型。我们将使用 typeof() 运算符检查变量是否为数字类型。

演示 1

我们将使用 typeof() 运算符来检查一个变量是否是数字。

代码

输出

下面是输出,我们可以看到第一个值是数字,第二个值不是数字。

JavaScript Check Value is a number

演示 2

我们将看到另一个使用 typeof() 运算符检查变量是否是数字的演示。

代码

输出

下面是输出,我们可以看到第一个值是数字,第二个值和第三个值不是数字。

JavaScript Check Value is a number

使用 isNaN() 方法

NaN 代表 Not-a-Number (不是数字)。isNaN() 方法用于在值不是数字时返回 true,在值是数字时返回 false。我们将在方法前加上 not (!) 符号,像这样:"!isNaN()"。!isNaN() 方法将给出相反的输出,也就是说,如果值不是数字,则 !isNaN() 方法返回布尔值 "true"。如果值是数字,则 !isNaN() 方法返回布尔值 "false"。

演示 1

我们将使用 isNaN() 方法来检查一个值是否是数字。

代码

输出

我们可以从输出中看到,第一个值是数字,但第二个和第三个值不是数字。

JavaScript Check Value is a number

演示 2

我们将看到另一个使用 isNaN() 方法检查值是否为数字的演示。

代码

输出

下面是输出,我们可以看到第一个值是数字,但第二个值和第三个值不是数字。

JavaScript Check Value is a number

使用 Number.isFinite() 方法

Number.isFinite() 方法用于检查变量值是否为数值。如果值是数值,它会检查该值是有限的还是无限的。如果值是数值且是有限的,它返回 true。

演示 1

我们将使用带 try-catch 语句的 Number.isFinite() 方法来检查一个值是否为数字。

代码

输出

我们可以看到,只有第一个值是数字,其他值不是数字。

JavaScript Check Value is a number

演示 2

我们将看到另一个使用 Number.isFinite() 方法检查值是否为数字的演示。

代码

输出

我们可以看到,第一个和第二个值是数字,第三个和后面的值不是数字。

JavaScript Check Value is a number

使用 Number.isInteger() 方法

Number.isInteger() 方法可以用来检查变量值是否为数值,但 Number.isInteger() 方法无法检查浮点数。

演示 1

我们将使用 Number.isInteger() 方法来检查一个值是否为数字。

代码

输出

我们可以看到,第一个和第三个值不是数字,但第二个值是数字。

JavaScript Check Value is a number

演示 2

我们将看到另一个使用 Number.isInteger() 方法检查值是否为数字的演示。

代码

输出

我们可以看到,第一个值是数字,第二个值不是数字,第三个值是浮点数但不是整数,因此 Number.isInteger() 方法无法检测到浮点数。

JavaScript Check Value is a number

结论

在本文中,我们已经了解了 JavaScript 如何检查值是否为数字。我们已经掌握了如何使用各种方法检查变量值是否为数字,包括使用 typeof() 运算符、isNaN() 方法、Number.isFinite() 方法和 Number.isInteger() 方法。


下一主题Zod-javascript