将JavaScript编号转换为具有固定长度的字符串

时间:2018-02-27 10:33:56

标签: javascript string formatting string-formatting number-formatting

我使用Node.js将数字打印到控制台,并希望它们易于阅读。由于数字以列显示,因此它们的长度应相同。在开始编写怪物函数之前,有没有简单的方法呢?

我已尝试过.toFixed().padStart(),但他们在所有情况下都不能正常工作。

问题的一部分是将数字转换为带有.toString()的字符串,并使用JavaScript格式将其转换为' e'如果数字显着小或大,则表示法。我不知道如何防止这种情况。我继续ECMAScript website to view the implementation for Number.prototype.toString()而且很复杂。

以下是我想要的一些例子:

Length: 8

Input                Desired Output
12345678          => 12345678
1234              => 1234.000 // Works with .toFixed()
0                 => 0.000000 // ^^
1234567890.0123   => 1.2345e9 // Doesn't work with .toFixed() or padStart()       
0.00000000012345  => 1.234e-9 // ^^
1234567890123.123 => 1.234e12 // ^^
-123.4            => -123.400 // Works with .toFixed()
0.0123456789      => 0.012345 // Works with .slice()

0 个答案:

没有答案