前端— toFixed() 的精度問題
之前的專案裡涉及到了金額的計算,要求保留兩位小數或4位小數,一直是採用原生的Number物件的原型物件上的toFixed()方法來計算的。直到有一天測試提了Bug,反覆驗證後發現,用 tofixed 來保留n位小數在某種情況下確實會出精度問題,真叫人頭大 (ÒωÓױ)!!!
下面進行測試
let num = 1.234 num.toFixed(2) //1.23 正確 let num = 1.235 num.toFixed(2) //1.24 正確 let num = 1.236 num.toFixed(2) //1.24 正確 let num = 0.234 num.toFixed(2) //0.23 正確 let num = 0.235 num.toFixed(2) //0.23 錯誤 X let num = 0.236 num.toFixed(2) //0.24 正確
也就是說,當num
可以用 $toFixed(num,n) 方法來代替num.toFixed(n) :
$tofixed (num, n) { var symbol = 1 if (num有什麼問題,歡迎大家指出。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4692/viewspace-2805158/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- JS toFixed 精度問題JS
- 關於使用toFixed()函式時報錯”toFixed() is not a function”的問題函式Function
- bcadd 的精度問題?
- 集合 bcadd 的精度問題?
- JS中toFixed()方法的問題及解決方案JS
- [Java] 浮點數的精度丟失問題與精度控制方法Java
- iOS浮點數精度問題iOS
- 探討系統中?錢的精度問題
- 記錄--前端金額運算精度丟失問題及解決方案前端
- MindSpore模型精度調優實戰:如何更快定位精度問題模型
- JS中浮點數精度問題JS
- 完美解決方案-雪花演算法ID到前端之後精度丟失問題演算法前端
- JavaScript中解決計算精度丟失的問題JavaScript
- 前端保留兩位小數toFixed(2)會有坑前端
- JavaScript toFixed()JavaScript
- 探尋 JavaScript 精度問題以及解決方案JavaScript
- SAS 數值儲存方式和精度問題
- JavaScript 中精度問題及解決思路彙總JavaScript
- JS大坑之19位數的Number型精度丟失問題JS
- iOS --NSDecimalNumber 處理計算精度不準確問題iOSDecimal
- JS 加減乘除 尤其是減法精度問題JS
- Double型別數值相加導致精度缺失問題型別
- ETL過程中資料精度不準確問題
- 前端面試常問問題前端面試
- 關於JS的浮點數計算精度問題解決方案JS
- 前端常見問題前端
- 前端跨域問題前端跨域
- JavaScript解決浮點數算數運算精度問題JavaScript
- WebGL著色器32位浮點數精度損失問題Web
- 如何避免JS浮點運算的精度問題(例:0.1+0.7=0.7999999999999999)JS
- 前端常見問題 - vue前端Vue
- 前端常見問題整理前端
- 前端的安全問題與防禦策略前端
- 前端面試中可能會問到的問題(一)前端面試
- 前端面試中最常問到的垂直水平居中問題前端面試
- [譯] 前端專案中常見的 CSS 問題前端CSS
- 前端資源化的問題如何破局?前端
- 前端常見問題(四)- 其他前端