如何避免Javascript怪异浮动行为?

时间:2015-09-02 00:54:35

标签: javascript floating-point tofixed

为什么尝试使用1.01添加2.05 返回此值?

console.log(2.05+1.01); // -> 3.0599999999999996?

是使用toFixed()的唯一方法吗?

console.log((2.05+1.01).toFixed(2))

如何避免这种行为,因此在我的代码的内部计算中不会让我感到意外。

1 个答案:

答案 0 :(得分:1)

这是因为javascript的浮点精度最多只能达到14位。围绕它的唯一真正的方法是将每个数字乘以一个高数字或做你所说的。