将尾随零添加到整数而不在JS中转换为字符串?

时间:2018-08-11 00:07:53

标签: javascript numbers

我希望将小数添加到整数的末尾。例如:

15 => 15.00

toFixed之类的方法的问题在于它将把它转换成字符串。我试图在字符串上使用parseFloat()和Number(),但是它将把它转换回没有小数的整数。

这可能吗?如果没有,有人可以向我解释为什么这不可能的逻辑吗?

编辑:意图是将数字显示为数字,但是从目前的共识来看,似乎唯一的处理方法是使用字符串。找到了以下原因的答案:https://stackoverflow.com/a/17811916/8869701

2 个答案:

答案 0 :(得分:0)

使用数字1515.00是相等的。使用内存来存储尾随或前导零将毫无意义。 如果需要该信息,通常用于显示目的。在这种情况下,字符串是正确的选择。 如果再次需要该值,则可以将字符串解析为数字。

答案 1 :(得分:0)

您发现的问题是javascript中的所有数字都是浮点数。

a = 0.1
typeof a # "number"

b = 1
typeof b # number

它们是相同的。

因此,没有真正的方法可以将整数转换为浮点数。

这就是所有parseFloat等都是用于从字符串读取和写入数字的字符串方法的原因。即使您确实有浮点数和整数,指定数字的精度也只有在向用户显示时才有意义,因此无论如何它都会转换为字符串。

根据确切的用例,如果要以定义的精度显示,则需要使用字符串。