首頁 > web前端 > js教程 > 如何在 JavaScript 中將數字精確舍入小數點後兩位?

如何在 JavaScript 中將數字精確舍入小數點後兩位?

Patricia Arquette
發布: 2024-12-28 16:55:11
原創
751 人瀏覽過

How to Accurately Round Numbers to Two Decimal Places in JavaScript?

必要時將數字四捨五入到小數點後兩位

處理數值資料時,通常需要將數值四捨五入到指定的小數位。但是,在某些情況下,我們只想在值尚未舍入到所需精度時進行舍入。

考慮以下場景:您希望將數字舍入到最多兩位小數,但僅在必要時進行。例如:

Input:
10
1.7777777
9.1

Output:
10
1.78
9.1
登入後複製

使用Math.round()

一個可能的解決方案是使用Math.round() 方法:

let roundedNum = Math.round(num * 100) / 100;
登入後複製

此方法將數字乘以100,然後將其四捨五入為整數(有效地將小數點向右移動兩位數)然後除以 100 以保留兩位小數的值。

使用 Number.EPSILON

但是,這種方法無法正確處理邊界情況。例如,1.005 將四捨五入為 1.01,而不是 1.00。為了解決這個問題,我們可以用 Number.EPSILON:

let roundedNum = Math.round((num + Number.EPSILON) * 100) / 100;
登入後複製

Number.EPSILON 表示兩個浮點數之間被認為有效的最小差異。將其加到數字中可確保該值正確舍入,即使在邊界情況下也是如此。

以上是如何在 JavaScript 中將數字精確舍入小數點後兩位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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