ホームページ  >  記事  >  ウェブフロントエンド  >  js_javascript スキルにおける加算と減算の正確な計算の例

js_javascript スキルにおける加算と減算の正確な計算の例

WBOY
WBOYオリジナル
2016-05-16 16:53:561278ブラウズ

たとえば、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;idataOneFloat ="0";
}
for(var i=0;idataTwoFloat ="0";
}

/**
* 2 つのデータ
* を乗算して両方の整数にします。整数計算
* の方が正確だからです。
*/
var one=dataOneInt "" dataOneFloat;
var two=dataTwoInt "" dataTwoFloat;
//alert("dataOne:" dataOne " dataTwo:" dataTwo " one:" one " two:" two);

/**
*データを倍数で拡張した後、計算結果を取得します。
*さらに同じ倍数で減算します。
* 正しい結果を取得します。
*/
var result= (数値(1) 数値(2))/Math.pow(10,maxLength);

結果を返します。

}

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。