toFixed银行家算法

632 阅读1分钟

啥是银行家舍入法

看看小Chat的回复

image.png

总的来说,小Chat还是有点不太聪明的样子 (0.5)就不说了

搬运工的总结

两个部分组成

四舍五入

  • 保留位数的后一位如果小于5,则舍去。

  • 保留位数的后一位如果大于5,则进上去。

奇进偶舍

  • 保留位数的后一位如果是5

    • 且5后面仍有数,则无论奇偶都要进入。
    • 若5后面不再有数,要根据尾数“5”的前一位决定: 如果是奇数则进入,如果是偶数则舍去。

实践检验真理

image.png

翻车了!!!

若5后面不再有数,要根据尾数“5”的前一位决定: 如果是奇数则进入,如果是偶数则舍去。

具体原因就是 : 0.1 + 0.2 不等于 0.3的原因

image.png

计算机底层的存储如上图所示

总结

6.215.toExponential(17) // 显出原型!!!
  • 0.1 + 0.2 不等于 0.3的原因
  • 银行家舍入法