【发布时间】:2010-05-20 15:31:50
【问题描述】:
在 javascript 中,我注意到 toString 和 valueOf 会截断小数点后的尾随 0。例如:
var num = 0.00
var num2 = 0.0100
num.valueOf() or num.toString() // outputs 0
num2.valueOf() or num2.toString() // outputs 0.01
这是正常行为吗?是否有办法保留尾随的 0?
编辑:我改变了我原来的问题,因为经过一些测试后我意识到以上是问题的根源。谢谢。
【问题讨论】:
-
当你说它“不能正常工作”时,出了什么问题?您是否尝试过以某种方式对其进行调试?
-
格式函数应该使用'style'变量来决定它应该输出多少个小数。当我使用第一种方法时,它会截断小数,但使用第二种方法正确输出。格式函数本身工作得很好,只有当我以上述方式传递样式时,所以我只是想知道在 format() (方法 1)部分或外部(方法 2)内部是否有 .toString 有区别)。
-
好吧,您是否插入了一些“console.log”调用(用于 Firebug)或一些警报或其他任何东西,以查看该“typeof”返回的内容,以及该“toString”的结果是什么时候在 if 语句中调用?
-
您能否包括您如何称呼
formatNumber? -
@John Keyes,在上面添加了更多详细信息。 @Pointy 我尝试在将样式更改为字符串后警告样式,它返回对象预期错误。
标签: javascript tostring