在进行两个数字计算的时候,想取小数点之后两位数,计算如下:

    1. var a = 766.9;
    2. var b = 0.05;
    3. var c = a * b; // 38.345
    4. // 我们一般取小数点后几位都是使用 toFixed(n)
    5. c.toFixed(2); // 38.34
    6. // 这个结果明显不符合我们的四舍五入的想法,想要的结果应该是38.35
    7. // 这个时候查询资料发现,js有一个这个属性 Number.EPSILON
    8. // Number.EPSILON 属性表示 1 与Number可表示的大于 1 的最小的浮点数之间的差值
    9. // EPSILON 属性的值接近于 2.2204460492503130808472633361816E-16,或者 2-52。
    10. // 对于上面的计算,我们这样操作
    11. Math.round((c + Number.EPSILON) * 100) / 100; // 38.35
    12. // 首先将数字加上精度差,乘以100之后取整,再除以100变成两位小数就可以实现精确的四舍五入