run*_*ror 4 javascript floating-point precision numbers ieee-754
第一个问题:如果我们这样做的话,在java脚本中。
0.2 + 0.1
=>0.30000000000000004
Run Code Online (Sandbox Code Playgroud)
因为 0.2,0.1 被四舍五入到不同的数字,并且总和也被四舍五入到不同的数字。 这篇文章解释了幕后的情况。我理解这一点,但是当我这样做时。
0.3 + 0
=>0.3
Run Code Online (Sandbox Code Playgroud)
为什么显示0.3?0.3 不能用二进制正确表示,应该四舍五入到不同的数字,对吗?
所以 0.3 + 0 的值应该是 0.3 的四舍五入数和总和(如果需要)?
第二个问题:
我们什么时候做。
let x = 0.3
Run Code Online (Sandbox Code Playgroud)
由于 0.3 无法用二进制精确表示,因此它会四舍五入到另一个数字,但是当您访问变量 x 时,为什么它显示 0.3 而不是实际四舍五入的数字。
x
=>0.3
Run Code Online (Sandbox Code Playgroud)
但当你这样做的时候。
0.2 + 0.1
=>0.30000000000000004
Run Code Online (Sandbox Code Playgroud)
它显示实际的四舍五入数字,但不是 0.3。请解释一下。
| 归档时间: |
|
| 查看次数: |
876 次 |
| 最近记录: |