数字显示多达两个小数的地方没有尾随零(Display numbers up to two decim

2019-07-29 01:27发布

在我的代码,我将接受多个值,例如:

8.7456
8.7
8

我需要他们出现

8.74
8.7
8

即显示多达两个小数位。

据我所知, .toFixed(2)将帮助我的第一个值,但在第2和第3个值就会出现拖尾,我不想零。

如何产生我想要的结果吗?

Answer 1:

使用Number.toFixed圆人数达两位数字,格式为字符串。 然后使用String.replace砍掉尾随零:

(8.7456).toFixed(2).replace(/\.?0+$/, ""); // "8.75"
(8.7).toFixed(2).replace(/\.?0+$/, "");    // "8.7"
(8).toFixed(2).replace(/\.?0+$/, "");      // "8"


Answer 2:

100,乘floor ,除以100。

var n = 8.7456;
var result = Math.floor(n * 100) / 100; // 8.74

编辑:如果你正在寻找在事后这个问题,这可能不是你想要的。 它满足具有奇数要求8.7456显示为8.74 。 另请参阅相关的评论 。



文章来源: Display numbers up to two decimals places without trailing zeros