如何格式化浮点数而不进行舍入?

Toh*_*hid 3 javascript

我试图通过将小数点设置为"1"来格式化浮点数(假设为341.75).我试过了:

var num = 341.75;
alert(num.toFixed(1)); // output: 341.8
alert(num.toPrecision(1)); // output: 341.8
Run Code Online (Sandbox Code Playgroud)

但我需要的是341.7!显然这两种方法都试图绕过它,有没有办法在没有舍入的情况下做到这一点?

Ser*_*sev 10

小作弊怎么样?

Math.floor(num * 10) / 10
Run Code Online (Sandbox Code Playgroud)


Fan*_*ius 5

您可以在格式化之前减去0.05.

  • 当你使它适用于所有数字时,它停止参与最少. (3认同)