(444.2.toFixed(14)中的javascript-toFixed隐蔽问题
作为标题 当我使用toFixed转换浮点时(444.2.toFixed(14)中的javascript-toFixed隐蔽问题,javascript,tofixed,Javascript,Tofixed,作为标题 当我使用toFixed转换浮点时 (0.2).toFixed(4) -> 0.2000 (444.2).toFixed(4) -> 444.2000 (0.2).toFixed(14) -> 0.20000000000000 (444.2).toFixed(14) -> 444.19999999999999 //why ?!!! 我不明白是什么导致了这种结果 有什么javascript方法可以避免这个问题吗?浮点数不能用二进制精确
(0.2).toFixed(4) -> 0.2000
(444.2).toFixed(4) -> 444.2000
(0.2).toFixed(14) -> 0.20000000000000
(444.2).toFixed(14) -> 444.19999999999999 //why ?!!!
我不明白是什么导致了这种结果
有什么javascript方法可以避免这个问题吗?浮点数不能用二进制精确地表示所有小数。克服此问题的一种方法是使用parseFloat:
console.log(parseFloat((444.2).toFixed(14))代码>嗯。。。实际上,我需要使用toFixed(14)
来显示价格,比如444.2000000000
。谢谢你的回复D