」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何在不四捨五入的情況下將數字截斷到小數點後兩位?

如何在不四捨五入的情況下將數字截斷到小數點後兩位?

發佈於2024-11-09
瀏覽:847

How to Truncate a Number to Two Decimal Places Without Rounding?

將數字截斷至小數點後兩位而不進行四捨五入

在程式設計領域,使用數值通常需要精確控制其表示形式。常見任務是將數字截斷到特定的小數位數,確保顯示時不會進行任何捨入。

考慮這樣一種情況,您的值為 15.7784514,並希望將其顯示為 15.77,而不進行舍入。 toFixed() 方法雖然對於舍入數字很有用,但不適合此目的,因為它修改值而不是截斷值。

解決方案:轉換為字串並提取相關部分

為了解決這個挑戰,我們可以將數字轉換為字串,並提取所需的部分,直到小數點後第二位。以下是此方法的 JavaScript 程式碼片段:

function calc(theform) {
    var num = theform.original.value, rounded = theform.rounded
    var with2Decimals = num.toString().match(/^-?\d (?:\.\d{0,2})?/)[0]
    rounded.value = with2Decimals
}

使用函數的 HTML:

Original number:
"Rounded" number:

此方法取得原始數字,將其轉換為字串,並使用正規表示式將數字格式配對到小數點後第二位。符合的部分被指派給一個新變數並顯示在「四捨五入」輸入欄位中,確保截斷的值在沒有任何捨入的情況下呈現。

遵循此方法,您可以有效地將數字截斷為小數點後兩位無需舍入的位置,可以精確控製程式中數值的顯示。

最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3