Javascript .toFixed不适用于.0*

Javascript .toFixed不适用于.0*,javascript,tofixed,Javascript,Tofixed,我有几个价值观: var one = 1.0000 var two = 1.1000 var three = 1.1200 var four = 1.1230 和功能: function tofixed(val) { return val.toFixed(2); } 本申报表: 1.00 1.10 1.12 1.12 我想要点-2之后的最大尺寸,但仅当数字之后为!=0 因此,我希望收到: 1 1.1 1.12 1.12 我该怎么做?假设您需要字符串输出 .toFixed(x)

我有几个价值观:

var one = 1.0000
var two = 1.1000
var three = 1.1200
var four = 1.1230
和功能:

function tofixed(val)
{
   return val.toFixed(2);
}
本申报表:

1.00
1.10
1.12
1.12 

我想要点-2之后的最大尺寸,但仅当数字之后为!=0 因此,我希望收到:

1
1.1
1.12
1.12 
我该怎么做?

假设您需要字符串输出

.toFixed(x)
返回一个字符串。只需再次将其解析为浮点:

return parseFloat(val.toFixed(2));
正确的方法如下:

return Math.round(num*100)/100;

如果要将其截断为小数点后两位(即1.238变为1.23而不是1.24),请使用
floor
而不是
round

@Doorknob您可以提供一个这样做不起作用的示例吗?为什么要将点设为可选项?@Doorknob您尝试过吗?这不会发生,因为
1200..toFixed(2)
“1200.00”
,所以RegExp不会超出
,只剪切
.00
,保留
1200
+val.toFixed(2);给你一个真实的数字,切碎。
return Math.round(num*100)/100;