为什么0.toFixed(2)print" 0"而不是" 0.00"?

时间:2017-01-10 07:52:53

标签: javascript

为什么0.toFixed(2)打印0而不是0.00

2 个答案:

答案 0 :(得分:3)

正确答案:

使用变量(Rajesh在评论中注明)!

var num = 0
var fixedStr = num.toFixed(2);

这看起来更好,更容易理解,也更安全,因为如果发生任何错误,它会给你带来错误。

一些警告

请注意,如果你执行0.toFixed(2),一些解释器(就像chrome控制台一样)会抛出错误,因为它对他们来说不是有效的JS。如果您在0周围使用变量或括号,那么它们就可以了。

另一种方式

在评论中也注明了(4castle): 您还可以使用以下内容:

0..toFixed(2)

由于第一个点将被解释为小数点,这对解释器来说是可以的,并被解析为"0.00"。 但是不要使用它,请使用变量。它看起来很糟糕,并不是每个人都明白这应该做什么(或为什么它神奇地起作用)。

答案 1 :(得分:2)

如果你在var中存储0,或者你使用(0),它会给0.00

(0).toFixed(2)
"0.00" 

var x = 0;
x.toFixed(2)
"0.00"