欢迎来到我的博客文章!所有文章都是满满的前端干货,文章简明扼要。
计算机用二进制表示小数,而 0.1、0.2 在二进制中是「无限循环小数」,必须舍入 → 累积误差
toFixed()方法的结果是一个字符串,可以利用parseInt()或者parseFloat()方法将字符串转换为数值。这里由于最终结果应该是一个小数,因此使用parseFloat()方法。
// 保留2位小数
+(0.1 + 0.2).toFixed(2) // 0.3 (数字)
parseFloat((0.1 + 0.2).toFixed(2)) // 同上