解決JS浮點數(小數)計算加減乘除的BUG

//浮點數減法運算
		function FloatSub(arg1,arg2){
		    var r1,r2,m,n;
		    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));
		    //動態控制精度長度
		    n=(r1=r2)?r1:r2;
		    return ((arg1*m-arg2*m)/m).toFixed(n);
		}

發現10.12-1=9,這就根本不是我想要的就結果!!!javascript

https://github.com/fzred/calculatorjsjava

百度搜了一款封裝好的js,直接使用git

calc.add(0.1, 0.2) // 0.3
calc.sub(0.1, 0.2) // -0.1
calc.mul(0.1, 0.2) // 0.02
calc.div(0.1, 0.2) // 0.5
calc.round(0.555, 2) // 0.56
相關文章
相關標籤/搜索