13
2019
12

toFixed银行家舍入

一直以为toFixed方法是直接舍去后边的,原来不是。然而也不是四舍五入。原来用的是银行家舍入规则。

银行家舍入规则:四舍六入五考虑,五后非零就进一,五后为零看奇偶,五前为偶应舍去,五前为奇要进一。

例如

>a = 1.550

>a.toFixed(1)

<"1.6"

>a = 2.550

<2.55

据说,好多编程语言的round函数也是用的银行家舍入规则。测试了一下,js的不是。

据说是为了更公平,有兴趣可以自己算一算概率。参考:https://www.jianshu.com/p/76f83bd476bd

又涨知识了。



« 上一篇下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。