萬盛學電腦網

 萬盛學電腦網 >> 腳本專題 >> javascript >> js中精確計算加法和減法示例

js中精確計算加法和減法示例

 這篇文章主要介紹了js中如何精確計算加法和減法,需要的朋友可以參考下

/精確計算加法和減法。例如0.1+0.2=0.3或 0.1-0.2=-0.1   代碼如下: function addFn(dataOne,dataTwo){    var dataOneInt=dataOne.toString().split(".")[0];  var dataOneFloat="";  var dataTwoInt=dataTwo.toString().split(".")[0];  var dataTwoFloat="";  var lengthOne=0;  var lengthTwo=0;  var maxlength=0;    if(dataOne.toString().split(".").length==2){  dataOneFloat=dataOne.toString().split(".")[1];  lengthOne=dataOneFloat.toString().length;    }  if(dataTwo.toString().split(".").length==2){  dataTwoFloat=dataTwo.toString().split(".")[1];  lengthTwo=dataTwoFloat.toString().length;    }    maxLength=Math.max(lengthOne,lengthTwo);  for(var i=0;i<maxLength-lengthOne;i++){  dataOneFloat+="0";  }  for(var i=0;i<maxLength-lengthTwo;i++){  dataTwoFloat+="0";  }    /**  *對兩個數據進行倍數放大  *使其都變為整數。因為整數計算  *比較精確。  */  var one=dataOneInt+""+dataOneFloat;  var two=dataTwoInt+""+dataTwoFloat;  //alert("dataOne:"+dataOne+" dataTwo:"+dataTwo +" one:"+one+" two:"+two);    /**  *數據擴大倍數後,經計算的到結果,  *然後在縮小相同的倍數  *進而得到正確的結果  */  var result= (Number(one)+Number(two))/Math.pow(10,maxLength);    return result;    } 
copyright © 萬盛學電腦網 all rights reserved