2

JavaScriptで切り上げまたは丸めを行うと、この問題が発生します。うまく機能しますが、適切に機能しないシナリオがいくつかあります。

例えば。

価格は 0.30 で、15% 割引の場合、結果として 0.255 または 0.26 になります。(これは何とか大丈夫)

価格は 79.99 で、50% 割引の場合、結果として 40 になります。(実際の結果は 39.995)

これを参照として使用してみましたtoFixed(2)と数学ラウンドを使用して正しい丸めを取得します

このプロセスも行いましたMath.round(value*Math.pow(10,dec))/Math.pow(10,dec);

何か案は?

ありがとう

これは私の最初のテストです。これは最初のテストにすぎませんが、最後の 2 桁が 5 より大きいかどうかをチェックし、それを に適用Math.ceil0.255ますが、結果を0.26使用する場合は、結果が になるように使用する必要があります。39.9939.9939.99Math.round40

私が達成したいのは、切り上げが必要な場合、または切り上げが必要な場合に、任意の数値を切り上げまたは切り捨てできるようにすることです。

アップデート

私は自分の問題を解決することができました。(少なくとも私の特定の環境では)

http://jsfiddle.net/xMj3M/4/

4

2 に答える 2