提问者:小点点

JavaScript如何写一个小数点后有2位的数字,它会以小数点显示0?


JavaScript写一个小数点后有2位的数字,它会以小数点显示0?

我不担心四舍五入,因为我只接受2位小数

设num=2.60

console.log(num)//结果2.6

它会返回2.6,但我想要2.60。 我可以使用to.fixed(2),但它将以字符串格式返回。

设num=1.23 console.log(num)//结果1.23

我知道to.fixed(),但它返回字符串。 我想要数字格式,它显示1.00和1.60的数字格式,而不是在字符串格式。 我使用了parseFloat(Num.ToFixed(2)),但它没有显示十进制的最后0值。


共1个答案

匿名用户

您永远不能改变javascript引擎表示浮点数的方式,如果它是一个数字,并且有足够的前导零,引擎认为它应该削减它,那么它就会这么做。

浮点中的1.60实际上更像1.6000000000000000888,您可以通过尝试自己看到

console.log(1.60 === 1.6000000000000000888) // true

解决方案是,每当您希望以所需的格式显示值时,使用tofixed;当您需要进行算术运算时,使用parsefloat将该值转换回--就像您所做的那样,但只是为视图和算术使用单独的变量。