如何在 JavaScript 中检查变量是否为整数?

front end technologyjavascriptweb development

在本教程中,我们将学习如何在 JavaScript 中检查变量是否为整数。在解决问题之前,我们必须先解决一个问题。我们可以问自己,"为什么我们需要检查变量是否为整数?"。让我们通过一个例子来理解答案。假设我们使用输入文本框从用户那里获取值。它以字符串格式返回值,现在假设我们正在添加值。我们会得到正确的结果吗?显然不是。所以,在这种情况下,我们需要检查变量是否为整数。

此外,我们经常需要只使用整数而不是浮点数进行操作。因此,在很多情况下,我们都需要检查变量类型。

这里有不同的方法来检查变量是整数还是其他类型。

  • 使用 Number.isInteger() 方法

  • 使用 typeof 运算符

  • 使用 parseInt() 方法

使用 Number.isInteger() 方法

Number isInteger() 方法将变量作为参数,如果变量是整数,则返回 true。否则,返回 false。

语法

用户可以按照以下语法使用 isInteger() 方法。

Number.isInteger( variable );

参数

  • 变量 - 可以是任何变量,例如浮点数、字符串等,用于检查它是否为整数

示例

在下面的示例中,我们使用了 isInteger() 方法来检查变量是否为整数。我们对不同的值应用了 isInteger() 方法,其中一个是无穷大。用户可以在输出中看到结果。

<html> <head> <title>Check if variable is of integer type.</title> </head> <body> <h2>Check if variable is of integer type in JavaScript using <i> isInteger() </i> method.</h2> <h4>output for value 10.</h4> <div id = "result1"></div> <h4>Output for Infinity.</h4> <div id = "result2"></div> <h4>output for 0.123</h4> <div id = "result3"></div> <script> let result1 = document.getElementById("result1"); let result2 = document.getElementById("result2"); let result3 = document.getElementById("result3"); let number = 10; result1.innerHTML = Number.isInteger(number) number = Infinity; result2.innerHTML = Number.isInteger(number); numer = 0.123; result3.innerHTML = Number.isInteger(number); </script> </body> </html>

在上面的输出中,用户可以看到,isInteger() 方法对无穷大和浮点值返回"false"。

使用 typeof 运算符

typeof 运算符可用于检查 JavaScript 中任何变量的类型。我们将首先检查变量的类型,如果变量的类型是数字,则我们将检查它是否包含小数部分。如果数字不包含小数部分,则它应该是整数。要检查数字是否包含小数部分,我们可以对数字取 1 的模数。

用户可以按照以下语法应用上述方法。

语法

let number = 10;
// 如果数字对 1 的模数为 0,则它不包含小数部分,数字是整数。
let result = typeof number == "number" && number % 1 == 0 ? true : false;

示例

<html> <head> <title>Check if variable is of integer type.</title> </head> <body> <h2>Check if variable is of integer type in JavaScript using <i> typeof operator.</i></h2> <h4>output for value 10</h4> <div id = "result1"></div> <h4>Output for 10.10</h4> <div id = "result2"></div> <script> let result1 = document.getElementById("result1"); let result2 = document.getElementById("result2"); let number = 10; result1.innerHTML = typeof number == "number" && number % 1 == 0 ? true : false; number = 10.10; result2.innerHTML = typeof number == "number" && number % 1 == 0 ? true : false;; </script> </body> </html>

使用 parseInt() 方法

parseInt() 方法从字符串或浮点数返回整数部分。我们还将解析数字的整数部分并将其与实际数字进行比较。如果 parseInt() 方法返回的值与实际数字值相同,则该数字为整数。

此外,我们将在此方法中使用严格相等运算符来比较返回值和实际值,因为它还会比较变量的数据类型。

用户可以按照以下语法使用上述方法。

语法

number === parseInt( number );

示例

在下面的示例中,我们使用 parseInt() 方法和严格相等运算符来检查数字是否为整数。作为第二个输入,我们传递了字符串值来检查它是否是整数。用户可以在输出中看到结果。

<html> <head> <title>Check if variable is of integer type.</title> </head> <body> <h2>Check if variable is of integer type in JavaScript using <i> parseInt() </i> method.</h2> <h4>output for value 14300</h4> <div id = "result1"></div> <h4>Output for "20"</h4> <div id = "result2"></div> <script> let result1 = document.getElementById("result1"); let result2 = document.getElementById("result2"); let number = 14300; result1.innerHTML = number === parseInt(number); number = "10"; result2.innerHTML = number === parseInt(number); </script> </body> </html>

我们已经学习了三种检查变量是否为整数的方法。最好使用 isInteger() 方法来实现我们的目标。但是,本教程中我们还没有讨论许多其他方法。其中之一是从数字中删除小数部分,使用按位运算符,然后将其与实际值进行比较。


相关文章