在js中使用小數進行加減乘除計算時,可能會導致資料不準確出現好多小數問題
查了一些資料,一是 j**ascript 浮點數計算的 bug,另乙個是和計算機最終轉換成二進位制計算有關係
解決方法
1、加減法可以用引數乘以1000再用結果除以1000
乘除法可以用引數分別*100進行計算後在除以10000
2、使用tofixed()方法,效率貌似沒有第一種高,這裡返回的值一定有兩位小數,要麼後台用double接收,要麼用parseint()轉換為整數parseint((35.23*100).tofixed(2))。
因為tofixed方法返回的是乙個字串,所以別忘了把字串轉回浮點數
js加減乘除
除法函式,用來得到精確的乘法結 function accdiv arg1,arg2 catch e trycatch e with math 乘法函式,用來得到精確的乘法結果 function accmul arg1,arg2 catch e trycatch e return number s1....
js 加減乘除精度問題
一。加法精度修改後如下 function add val for let i 0 i val.length i return count math.pow 10,max 使用 add 0.1,0.2,0.3,0.4 1。可以傳多個引數進行相加。二。減法精度修改後如下 function sub val...
js加減乘除保留2位小數
在寫 時直接使用 對數字進行計算時不注意可能會存在一些奇怪bug 特別是兩小數之間的運算 比如整數和浮點數相乘出現了很多位小數,兩個小數相加減出現多個小數等 傳入引數arg1,arg2 得到運算結果,num有傳入時保留num位小數 加 add function add arg1,arg2,num c...