|
分類:[JavaScript]
JavaScriptの計算で質問させて頂きます。 小数点以下二位で四捨五入をする必要があります。
var a = 74; var b = 95;
var c = a/b; //結果0.7789473684210526 var d = Math.round(c * 100) / 100; //結果0.78
これで良いかと思ったのですが たまたま、以下の計算をしたら
var aa = 69.615; var bb = Math.round(aa * 100) //結果0.6961499999999999 var cc= bb / 100; //結果69.61
となりこのパターンでは誤差が出てしまいます。正しい値は69.62
では、最初のロジックも四捨五入する為に*100をしてるので 誤差が出てしまうと言う事ですよね。
これの解決方はどのようにすれば良いのでしょうか?
|