前端— 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/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 關於使用toFixed()函式時報錯”toFixed() is not a function”的問題函式Function
- JS中toFixed()方法的問題及解決方案JS
- 精度計算問題
- iOS浮點數精度問題iOS
- MindSpore模型精度調優實戰:如何更快定位精度問題模型
- 記錄--前端金額運算精度丟失問題及解決方案前端
- 探討系統中?錢的精度問題
- Double型別精度問題引起的錯誤型別
- 開發中遇到的float double精度問題
- JS中浮點數精度問題JS
- JavaScript toFixed()JavaScript
- JavaScript 小數乘法運算精度問題JavaScript
- 完美解決方案-雪花演算法ID到前端之後精度丟失問題演算法前端
- JavaScript中解決計算精度丟失的問題JavaScript
- javascript小數乘法運算導致的精度問題JavaScript
- 探尋 JavaScript 精度問題以及解決方案JavaScript
- SAS 數值儲存方式和精度問題
- JavaScript 中精度問題及解決思路彙總JavaScript
- ETL過程中資料精度不準確問題
- js 處理四則運算失去精度問題JS
- js算數運算精度問題解決方案JS
- javascript浮點數計算精度問題介紹JavaScript
- 【求教:如何解決 java 浮點數精度問題】Java
- JS大坑之19位數的Number型精度丟失問題JS
- iOS --NSDecimalNumber 處理計算精度不準確問題iOSDecimal
- Double型別數值相加導致精度缺失問題型別
- JS 加減乘除 尤其是減法精度問題JS
- 關於JS的浮點數計算精度問題解決方案JS
- 前端面試常問問題前端面試
- 前端跨域問題前端跨域
- 前端常見問題前端
- 前端問題檢查前端
- WebGL著色器32位浮點數精度損失問題Web
- JavaScript解決浮點數算數運算精度問題JavaScript
- javascript關於toFixed的計算規則JavaScript
- 前端常見問題整理前端
- 前端常見問題 - vue前端Vue
- 前端的安全問題與防禦策略前端