javascript 精確加減乘除

2021-09-07 10:55:10 字數 2815 閱讀 1879

最近乙個專案中要使用 js 實現自動計算的功能,本以為只是實現簡單的加、減、乘、除就可以了,於是三下五除二做完了。

正當我竊喜

進行一些浮點數運算時,計算結果都是讓我大跌眼鏡啊,那個值讓我哭笑不得,一長串的值,太牛了。。。

我那個納悶啊!!不過還好牛人多,給了我一解決方案,嘿嘿。。。問題基本上解決了,為了表示感覺,我決定把**貼出來,大家共享一下,希望能給部分人一些幫助。

js**

//加法函式  

function accadd(arg1, arg2)   

catch (e)   

try   

catch (e)   

m = math.pow(10, math.max(r1, r2));  

return (arg1 * m + arg2 * m) / m;  

}   

//給number型別增加乙個add方法,,使用時直接用 .add 即可完成計算。   

number.prototype.add = function (arg) ;  

//減法函式  

function subtr(arg1, arg2)   

catch (e)   

try   

catch (e)   

m = math.pow(10, math.max(r1, r2));  

//last modify by deeka  

//動態控制精度長度  

n = (r1 >= r2) ? r1 : r2;  

return ((arg1 * m - arg2 * m) / m).tofixed(n);  

}  //給number型別增加乙個add方法,,使用時直接用 .sub 即可完成計算。   

number.prototype.sub = function (arg) ;  

//乘法函式  

function accmul(arg1, arg2)   

catch (e)   

try   

catch (e)   

return number(s1.replace(".", "")) * number(s2.replace(".", "")) / math.pow(10, m);  

}   

//給number型別增加乙個mul方法,使用時直接用 .mul 即可完成計算。   

number.prototype.mul = function (arg) ;   

//除法函式  

function accdiv(arg1, arg2)   

catch (e)   

try   

catch (e)   

with (math)   

}   

//給number型別增加乙個div方法,,使用時直接用 .div 即可完成計算。   

number.prototype.div = function (arg) ;   

//加法函式

function accadd(arg1, arg2)

catch (e)

try

catch (e)

m = math.pow(10, math.max(r1, r2));

return (arg1 * m + arg2 * m) / m;

} //給number型別增加乙個add方法,,使用時直接用 .add 即可完成計算。

number.prototype.add = function (arg) ;

//減法函式

function subtr(arg1, arg2)

catch (e)

try

catch (e)

m = math.pow(10, math.max(r1, r2));

//last modify by deeka

//動態控制精度長度

n = (r1 >= r2) ? r1 : r2;

return ((arg1 * m - arg2 * m) / m).tofixed(n);

}//給number型別增加乙個add方法,,使用時直接用 .sub 即可完成計算。

number.prototype.sub = function (arg) ;

//乘法函式

function accmul(arg1, arg2)

catch (e)

try

catch (e)

return number(s1.replace(".", "")) * number(s2.replace(".", "")) / math.pow(10, m);

} //給number型別增加乙個mul方法,使用時直接用 .mul 即可完成計算。

number.prototype.mul = function (arg) ;

//除法函式

function accdiv(arg1, arg2)

catch (e)

try

catch (e)

with (math)

} //給number型別增加乙個div方法,,使用時直接用 .div 即可完成計算。

number.prototype.div = function (arg) ;

使用方法:

js**

//加法示例(其它的都類似)  

function calculate()   

//加法示例(其它的都類似)

function calculate()

C 加減乘運算

using system namespace 加減乘除 return array private static int sub int array1,int array2 return array private static int mup int array1,int array2 return...

加減乘符號逆向

常量摺疊 計算公式 現多個常量進行計算時並且編譯器可以在編譯期間可以進行計算的,這樣原始碼中機會把結果的常量值進行替換 常量傳播 指的是在編譯期間可以計算出結果的變數轉換為常量值 優化大部分在release版本下才會優化.但是debug版本也會優化,在不影響使用者除錯的前提下進行優化 1常量加常量 ...

javascript數值精確計算

the function for decimal s add,subtract,multiplication,division.not get the float result.and add the function to number s prototype,so you can use it ...