首頁 > web前端 > js教程 > 主體

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

Barbara Streisand
發布: 2024-11-10 05:44:02
原創
963 人瀏覽過

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

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

在JavaScript 中處理數字時,通常需要用一定數量的數字來顯示它們小數位。 toFixed() 方法可用來將數字四捨五入到指定的小數位數,但是如果您需要截斷數字而不四捨五入怎麼辦?

考慮以下範例:

var num = parseFloat(15.7784514);
document.write(num.toFixed(1) + "<br />");
document.write(num.toFixed(2) + "<br />");
document.write(num.toFixed(3) + "<br />");
document.write(num.toFixed(10));
登入後複製

此程式碼產生以下輸出:

15.8
15.78
15.778
15.7784514000
登入後複製

如您所見,toFixed() 方法對數字到指定的小數位數。要截斷數字,我們可以將其轉換為字串,並使用正規表示式將數字匹配到小數點後第二位:

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

這段程式碼將原始數字轉換為字串,然後使用正規表示式^-?d (?:.d{0,2})?符合小數點後第二位的數字。然後將產生的字串指派給表單中的捨入元素。

此方法會將數字截斷到小數點後兩位,而不進行四捨五入。例如,如果原始數字是 15.7784514,則截斷後的值為 15.77。

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

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板