在 JavaScript 中,當我們將任何數字除以零時,我們可以得到無窮大的值。此外,開發人員在編寫計算結果為無窮大的數學表達式時可能會犯錯誤。因此,在對數學表達式的返回值執行任何操作之前,我們需要檢查該數值是否是有限的。
在這里,我們將學習三種使用 JavaScript 檢查數字是否為無窮大的方法。
將數字值與 Number.POSITIVE_INFINITY 和 Number.NEGATIVE_INFINITY 進行比較
在 JavaScript 中,數字是一個包含與數字相關的不同屬性和方法的對象。 Number 對象的POSITIVE_INFINITY 和NEGATIVE_INFINITY 屬性允許開發人員評估數字的正無窮大值和負無窮大值。
我們可以將數值與Number.POSITIVE_INFINITY 和Number.NEGATIVE_INFINITY 進行比較,以檢查是否number 的計算結果為 Infinity。
語法
按照以下語法使用數字對象的POSITIVE_INFINITY 和NEGATIVE_INFINITY 屬性。
if (num1 == Number.POSITIVE_INFINITY || num1 == Number.NEGATIVE_INFINITY) { // number is finite } else { // number is not finite }
登錄后復制
在上面的語法中,我們使用了 OR (||) 運算符來計算 if 語句中的多個條件。
示例
在此示例中,我們定義了兩個具有不同值的數字。 num1 包含有限值,num2 包含無限值。 checkNumberIsFinite() 函數將數字值作為參數,并通過將數字與 POSITIVE_INFINITY 和 NEGATIVE_INFINITY 進行比較來相應地打印消息,無論該數字是否有限。
<html> <body> <p>Comparing the number value with the <i> Number.POSITIVE_INFINITY and Number.NEGATIVE_INFINITY </i> to check if number evaluates to Infinity.</p> <div id = "output"> </div> <script> let output = document.getElementById("output"); let num1 = 23; let num2 = 12 / 0; function checkNumberIsFinite(num) { // compare the numerical value with the Number.POSITIVE_INFINITY //and Number.NEGATIVE_INFINITY if ( num == Number.POSITIVE_INFINITY || num == Number.NEGATIVE_INFINITY ) { output.innerHTML += "The num is finite and it's value is " + num1 + "<br/>"; } else { output.innerHTML += "The num is not finite <br/>"; } } checkNumberIsFinite(num1); checkNumberIsFinite(num2); </script> </body> </html>
登錄后復制
使用 isFinite() 方法
isFinite() 方法將數值作為參數,并根據數字是否有限返回布爾值。在這里,我們將以 Number 對象作為引用來調用 isFinite() 方法,以更穩健地評估數字。
語法
用戶可以按照下面的語法使用isFinite()方法來檢查數字是否為無窮大。我們將 Number 對象作為引用,并將數值作為參數傳遞。
if (Number.isFinite(num1)) { // number is finite } else { // number evaluates to infinite }
登錄后復制
參數
num1 – 這是一個要評估的數字。
返回值
它根據數字是有限還是無限返回布爾值。
示例
我們使用 isFinite() 方法作為 if-else 語句的條件。 isFinite() 方法根據我們作為參數傳遞的數值返回 true 或 false。根據返回值,程序執行的控制轉到 if 或 else 塊。
<html> <body> <h3>Using the <i>isFinite()</i> method to check if number evaluates to Infinity.</h2> <div id = "output"> </div> <script> let Output = document.getElementById("output"); let num1 = -93; let num2 = -12 / 0; // using the isFinite method; if (Number.isFinite(num1)) { Output.innerHTML += "The num1 is finite and its value is " + num1 + "<br/>"; } else { Output.innerHTML += "The num1 is not finite <br/>"; } if (Number.isFinite(num2)) { Output.innerHTML += "The num2 is finite and its value is " + num2 + "<br/>"; } else { Output.innerHTML += "The num2 is not finite <br/>"; } </script> </body> </html>
登錄后復制
使用 Math.abs() 方法和 Infinity 關鍵字
Math.abs() 方法允許我們獲取任何數字的絕對值。 Infinity是JavaScript中的一個關鍵字,表示無窮大值。
我們可以將我們的數字與無窮大和-無窮大兩者進行比較,或者取數字的絕對值并僅與無窮大進行比較。
語法
用戶可以使用以下語法來使用 Math.abs() 方法和 Infinity 關鍵字來檢查 number 的計算結果是否為 Infinity。
let number = Math.abs(num); if (number == Infinity) { // num is not finite. } else { // num is finite }
登錄后復制
示例
下面的示例包含evaluateNumber() 函數,該函數在用戶單擊評估數字按鈕時調用。 evaulateNumber() 函數首先將數字值轉換為正數值,并將其與 Infinity 關鍵字進行比較。
<html> <body> <h3>Using the <i> Math.abs() method and Infinity keyword </i> to check if number evaluates to Infinity.</h3> <div id = "output"> </div><br> <button onclick = "evaluateNumber(23324/0)"> Evaluate number </button> <script> let output = document.getElementById("output"); function evaluateNumber(num) { let number = Math.abs(num); if (number == Infinity) { output.innerHTML += "The number is not finite <br/>"; } else { output.innerHTML += "The number is finite. <br/>"; } } </script> </body> </html>
登錄后復制
檢查數字是否為無窮大的最佳方法是使用 isFinite() 方法,該方法將數字作為參數,并在計算數字后返回結果。然而,用戶也可以使用其他方法,因為所有方法都是線性的。
以上就是如何使用 JavaScript 檢查數字是否為無窮大?的詳細內容,更多請關注www.92cms.cn其它相關文章!