大家知道 在js 中,在計算精度,特別是浮點數計算。舉個栗子
?
然後我尋求各種解決辦法,其中用了lodash,ramda提供的四則運算。結果發現並沒有完全的解決這個問題, 怎麼辦呢?
然後我各種百度借鑑大神的解決辦法, 一波三折又發現一個問題。大神在封裝四則運算的時候, 用了toFixed 方法。然而這個方法也有坑,舉個栗子。
栗子2
所以通過上圖我們發現 2.55 這個變態數字取以為的時候和其他不一樣。
經過的不斷的研究和測試最終 封裝了五個方法下面貼原始碼:
toFixed方法
加法
減法
乘法
除法
如果使用npm 的同學可以這樣
npm i fourth_calculate --save
import Calculate from fourth_calculat
呼叫 Calculate.toFixed、Calculate.Add() 等等
-- 如果覺得複雜的同學 請移步 下面的連結:
程式碼 github地址 :https://github.com/yuhaiyang1/float_calculate
其中這幾個方法都寫了單元測試 有興趣的同學可以看下,也可以關注我,我會持續把我遇到的坑點分享給大家的。
補充: 最近發現有個庫 big.js 可以避免這個問題 順便安利一下