javascript浮點數精確計算程式碼
在浮點數進行加減乘除運算的時候會出現一些誤差,下面就介紹一下如何避免誤差實現精確計算。
一.加運算方式:
[JavaScript] 純文字檢視 複製程式碼function accAdd(arg1,arg2){ var r1,r2,m; try{r1=arg1.toString().split(".")[1].length}catch(e){r1=0} try{r2=arg2.toString().split(".")[1].length}catch(e){r2=0} m=Math.pow(10,Math.max(r1,r2)) return (arg1*m+arg2*m)/m }
arg1和arg2是要進行加運算的兩個浮點數。
二.減運算方式:
[JavaScript] 純文字檢視 複製程式碼function accSub(arg1,arg2){ return accAdd(arg1,-arg2); }
以上程式碼利用了加運算的程式碼,arg1和arg2是要進行減運算的兩個浮點數。
三.乘運算方式:
[JavaScript] 純文字檢視 複製程式碼function accMul(arg1,arg2) { var m=0,s1=arg1.toString(),s2=arg2.toString(); try{m+=s1.split(".")[1].length}catch(e){} try{m+=s2.split(".")[1].length}catch(e){} return Number(s1.replace(".",""))*Number(s2.replace(".",""))/Math.pow(10,m) }
arg1和arg2是要進行乘法運算的兩個浮點數。
四.除運算方式:
[JavaScript] 純文字檢視 複製程式碼function accDiv(arg1,arg2){ var t1=0,t2=0,r1,r2; try{t1=arg1.toString().split(".")[1].length}catch(e){} try{t2=arg2.toString().split(".")[1].length}catch(e){} with(Math){ r1=Number(arg1.toString().replace(".","")) r2=Number(arg2.toString().replace(".","")) return (r1/r2)*pow(10,t2-t1); } }
arg1和arg2是要進行除法運算的兩個浮點數。
相關文章
- JavaScript浮點數加減乘除精確計算JavaScript
- js精確計算浮點數相加JS
- PHP浮點數的精確計算BCMathPHP
- python中精確的浮點數運算Python
- 在Java中實現浮點數的精確計算 (轉)Java
- js精確比較浮點數大小JS
- javascript浮點數計算精度問題介紹JavaScript
- Java浮點數計算Java
- Java浮點數float,bigdecimal和double精確計算的精度誤差問題總結JavaDecimal
- JavaScript解決浮點數算數運算精度問題JavaScript
- js中浮點數計算常用方法JS
- 浮點數線上轉hex計算工具
- 用VB計算PI精確數值到30000位的程式程式碼。 (轉)
- javascript實現浮點數四捨五入效果程式碼JavaScript
- 為什麼php的浮點數運算不準確PHP
- JavaScript 浮點數及運算精度調整總結JavaScript
- js處理浮點數計算誤差JS
- 一個浮點數計算的問題
- 面試官瘋了嗎,問我為什麼浮點數不精確?面試
- JavaScript 浮點數陷阱及解法JavaScript
- Redis 精確去重計數 —— 咆哮點陣圖Redis
- 3,javase程式碼實戰-運算子——更加精確的使用浮點數(二)Java
- 計算機組成原理浮點數加減計算機
- Java如何正確比較浮點數Java
- JavaScript年月日精確到秒倒數計時JavaScript
- 計算機組成原理--浮點數-原碼補碼錶示範圍計算機
- JavaScript浮點數保留兩位小數JavaScript
- 浮點數在計算機底層的表示及運算計算機
- 補碼、反碼、浮點數
- 計算機中的浮點運算計算機
- 精確統計程式碼量(Java實現)Java
- 關於PHP精確計算模組PHP
- 為什麼計算機對浮點型數字計算存在誤差計算機
- 計算機組成與體系結構-數值表示範圍-浮點數計算計算機
- 計組之資料運算:9、浮點數的表示
- 二進位制轉float浮點數線上計算工具
- 匹配浮點數的正規表示式程式碼
- 深入理解浮點數的運算