如何在 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() 方法來實現我們的目標。但是,在本教程中我們沒有討論許多其他方法。其中一種方法是從數字中刪除小數部分,使用按位運算子,並將其與實際值進行比較。