在计算机进行数字计算时会先将十进制转化为二进制进行计算,由于二进制表示的有限数字不能超过 52 位在 JavaScript 里是不能精确存储的,计算机进行了四舍五入这时造成了数字误差导致计算结果不为0.3;
总结:我们可以看到,当十进制小数的二进制表示的有限数字超过 52 位时,在 JavaScript 里是不能精确存储的,这时候就存在舍入误差(Round-off error)。
在计算机进行数字计算时会先将十进制转化为二进制进行计算,由于二进制表示的有限数字不能超过 52 位在 JavaScript 里是不能精确存储的,计算机进行了四舍五入这时造成了数字误差导致计算结果不为0.3;
总结:我们可以看到,当十进制小数的二进制表示的有限数字超过 52 位时,在 JavaScript 里是不能精确存储的,这时候就存在舍入误差(Round-off error)。