首頁 >web前端 >js教程 >如何在 JavaScript 中將數字截斷到小數點後兩位而不進行四捨五入?

如何在 JavaScript 中將數字截斷到小數點後兩位而不進行四捨五入?

Susan Sarandon
Susan Sarandon原創
2024-11-09 07:35:02599瀏覽

How to Truncate Numbers to Two Decimal Places in JavaScript Without Rounding?

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

在JavaScript 中,toFixed() 方法通常用於將數值四捨五入到指定的小數位數。但是,可以在不捨入的情況下截斷值,確保它們以特定精度顯示。

考慮值 15.7784514。使用toFixed(),我們可以輕鬆地將其截斷為:

num.toFixed(1); // 15.8
num.toFixed(2); // 15.78
num.toFixed(3); // 15.778
num.toFixed(10); // 15.7784514000

但是,要將值截斷為15.77,我們需要將其轉換為字串,並使用正規表示式來匹配和捕獲數字精確到小數點後第二位:

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

在此例如:

  • original 是使用者輸入原始數字的輸入。
  • rounded 是顯示截斷數字的唯讀輸入。
  • with2Decimals變數使用正規表示式擷取具有兩位小數的數字。

簡單地根據需要更新輸入值,截斷的數字將自動顯示在四捨五入的輸入中。此方法允許精確截斷數值,而無需舍入。

以上是如何在 JavaScript 中將數字截斷到小數點後兩位而不進行四捨五入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn