在 JavaScript 中,當我們將任何數字除以零時,我們可以得到無窮大的值。此外,開發人員在編寫計算結果為無限大的數學表達式時可能會犯錯。因此,在對數學表達式的回傳值執行任何操作之前,我們需要檢查該數值是否是有限的。
在這裡,我們將學習三種使用 JavaScript 檢查數字是否為無限大的方法。
在 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() 方法將數值作為參數,並根據數字是否有限傳回布林值。在這裡,我們將以 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是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 檢查數字是否為無限大?的詳細內容。更多資訊請關注PHP中文網其他相關文章!