3

重複の可能性:
JavaScriptの浮動小数点演算は壊れていますか?

Javascriptでは、

3 * 0.1 = 0.30000000000000004

これは、0.3を正確に表現できない言語の記数法によるものだと思います。しかし、なぜ次のようなのですか?

0.15 * 2 = 0.3

同様に、

0.1 + 0.2 = 0.30000000000000004

だが

0.15 + 0.15 = 0.3

どう?

4

1 に答える 1

4

しかし、なぜ次のように?

0.15 * 2 = 0.3

結果は正確に 0.3 ではありませんが、値を表示するために最下位桁を四捨五入すると、0.3 に丸められるほど十分に近い値です。

との値も正確0.10.15はありませんが、 を表す誤差は0.1よりも大きいようです0.15。計算に値を使用すると、エラーが蓄積され、遅かれ早かれ、値が表示されたときに四捨五入されないほど大きくなります。

于 2013-01-10T05:25:21.240 に答える