そこで、問題が発生した 2 つの数値 (10 進数) を加算するスクリプトを作成しています。
http://jsfiddle.net/DerekL/esqnC/
私はスクリプトを作成しました、それはかなり良いことがわかりました:
0.1 + 0.5 //0.6
0.2 + 0.3 //0.5
しかし、すぐに次のことがわかります。
0.1 + 0.2 //0.30000000000000004
0.01 + 0.06 //0.06999999999999999
そして、それは私には正しく見えません。有限ビットで浮動小数点を使用することの欠点であることは知っていますが、それを修正する方法が見つかりません。
Math.ceil //No
Math.floor //No
.slice //No
アップデート
最初に1000を掛けてから足し、1000で割ることはできますか?