Javascript格式浮点数的小数位数

时间:2015-04-17 15:34:31

标签: javascript jquery

有人可以帮我解决这个问题吗?我使用以下代码获取输入字段的值

parseFloat($("#salaryFrom").val());

唯一的问题是,如果salaryFrom字段中的值以0结尾,则会从结果中删除。例如值8.50返回8.5,我需要它返回8.50

3 个答案:

答案 0 :(得分:5)

作为浮动8.50和8.5是相同的。但是,当您将数字转换为字符串时,您可以指定要使用函数toFixed()的小数位数,例如

var a = parseFloat($("#salaryFrom").val());
var b = a.toFixed(2);

函数toFixed()会将您想要格式化数字的小数位数取为,在本例中为2。

答案 1 :(得分:0)

Javascript有一个toFixed()函数来格式化浮点数。所以试试吧。

 tmp = parseFloat($("#salaryFrom").val());
 formatted_val = tmp.toFixed(2);
 alert(formatted_val);

答案 2 :(得分:0)

在javascript中使用.toFixed(2)。 (2) - 可选小数点后的位数。默认值为0(小数点后没有数字)

var num = 8.5;
console.log(num.toFixed(2))

示例:使用toFixed

var numObj = 12345.6789;

numObj.toFixed();       // Returns '12346': note rounding, no fractional part
numObj.toFixed(1);      // Returns '12345.7': note rounding
numObj.toFixed(6);      // Returns '12345.678900': note added zeros
(1.23e+20).toFixed(2);  // Returns '123000000000000000000.00'
(1.23e-10).toFixed(2);  // Returns '0.00'
2.34.toFixed(1);        // Returns '2.3'
-2.34.toFixed(1);       // Returns -2.3 (due to operator precedence, negative number literals don't return a string...)
(-2.34).toFixed(1);     // Returns '-2.3' (...unless you use parentheses)