如何在 JavaScript 中檢查變數是否為整數?


在本教程中,我們將學習如何在 JavaScript 中檢查變數是否為整數。在我們解決問題之前,我們必須先有一個問題。我們可以問自己,“為什麼我們需要檢查變數是否為整數?”。讓我們用一個簡單的例子來理解答案。假設,我們正在使用輸入文字框從使用者那裡獲取值。它以字串格式返回這些值,現在假設我們要對這些值進行加法運算。我們會得到正確的結果嗎?顯然不會。因此,在這種情況下,我們需要檢查變數是否為整數。

此外,我們經常需要只對整數進行運算,而不是浮點數。因此,可能會有很多需要檢查變數型別的場景。

以下是一些檢查變數是否為整數或其他型別的方法。

  • 使用 Number.isInteger() 方法

  • 使用 typeof 運算子

  • 使用 parseInt() 方法

使用 Number.isInteger() 方法

Number 的 isInteger() 方法將變數作為引數,如果變數是整數則返回 true。否則,它返回 false。

語法

使用者可以按照以下語法使用 isInteger() 方法。

Number.isInteger( variable );

引數

  • 變數 − 它可以是任何變數,例如浮點數、字串等,用於檢查它是否為整數。

示例

在下面的示例中,我們使用了 isInteger() 方法來檢查變數是否為整數。我們對不同的值應用了 isInteger() 方法,其中一個值為 Infinity。使用者可以在輸出中看到結果。

<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() 方法對於 Infinity 和浮點值返回“false”。

使用 typeof 運算子

typeof 運算子可用於檢查 JavaScript 中任何變數的型別。我們將首先檢查變數的型別,如果變數的型別是數字,那麼我們將檢查它是否包含小數部分。如果數字不包含小數部分,則它應該是一個整數。要檢查數字是否包含小數部分,我們可以取該數字與 1 的模。

使用者可以按照以下語法應用上述方法。

語法

let number = 10;
// if modulo of number with 1 is 0, it doesn’t contains the decimal part and number is an Integer.
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() 方法來實現我們的目標。但是,在本教程中我們沒有討論許多其他方法。其中一種方法是從數字中刪除小數部分,使用按位運算子,並將其與實際值進行比較。

更新於: 2022年8月8日

6K+ 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告