Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
(444.2.toFixed(14)中的javascript-toFixed隐蔽问题_Javascript_Tofixed - Fatal编程技术网

(444.2.toFixed(14)中的javascript-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方法可以避免这个问题吗?浮点数不能用二进制精确

作为标题

当我使用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方法可以避免这个问题吗?

浮点数不能用二进制精确地表示所有小数。克服此问题的一种方法是使用parseFloat:


console.log(parseFloat((444.2).toFixed(14))嗯。。。实际上,我需要使用
toFixed(14)
来显示价格,比如
444.2000000000
。谢谢你的回复D