为什么JS显示25.1 + 61.7 + 13.2 = 100.00000000000001?它是固定的,如果你只是改变数字的位置,如13.2 + 25.1 + 61.7 = 100.任何人都可以解释这一点。
答案 0 :(得分:1)
因为您正在使用浮点运算。 Here is an explanation of what is happening.
答案 1 :(得分:1)
JavaScript使用IEEE 754浮点数学,这是一种基础2浮点格式。有许多值无法以该格式精确表示,其中特别是x.7
之类的小数部分。
这不是编译器问题。这是JavaScript代表实数的基本方式的问题。许多其他语言都会遇到完全相同的问题。
计算机通常不会以严格的方式处理实数。