0

我有一个浮点数,var a = 324620.8

我希望它看起来像这样 a = 324620.80

到目前为止,这是我的代码,

    var a_float = a;
    var a_int = parseInt(a);

    d = a_float - a_int;
    if(d <= 0){
        a = a_int+'.00';
    }else{
        if(d < 0 && d > 0.1){
            a = a_int + d + '0';
        }else{
            a = a_float;
        }   
    }

这仅适用于一位十进制数字。我希望它在我有 2 个十进制数字时工作。

.toFixed在某些浏览器中不起作用。

4

3 回答 3

4

回答标题中的问题

如何在浮点数中找到多少个十进制数字?

将位置的位置与'.'浮点的长度作为字符串进行比较。

var x = 1.2345,
    x_str = x.toString(),
    decimal_digits = x_str.length - x_str.lastIndexOf('.') - 1;
decimal_digits === x_str.length && (decimal_digits = 0); // case no decimal
decimal_digits; // 4
于 2013-04-08T16:47:24.810 回答
0

JSFIDDLE 使用toFixed("2");

var f = 1.3454545;
f.toFixed(2);
于 2013-04-08T16:33:53.767 回答
0
var decimal = 4.0;
var a = (decimal).toFixed(2); 


console.log(a); // outputs 4.00
于 2013-04-08T16:33:55.280 回答