Answers:
float_num.toFixed(2);
注意:toFixed()
如果需要满足指定的长度,将舍入或填充零。
float_num.toFixed(2);
工作正常)
不知道我是怎么解决这个问题的,但是即使被问了已经有很多年了,我也想添加一种快速而简单的方法,并且它永远不会让我失望:
var num = response_from_a_function_or_something();
var fixedNum = parseFloat(num).toFixed( 2 );
parseFloat()
呢?仅当数字来自字符串时才应使用它。
function round(value, decimals) {
return Number(Math.round(value+'e'+decimals)+'e-'+decimals);
}
四舍五入(1.005,2); //返回1.01
四舍五入(1.004,2); //返回1而不是1.00
答案是通过以下链接进行的:http : //www.jacklmoore.com/notes/rounding-in-javascript/
您可以尝试混合Number()
和toFixed()
。
将目标号码转换为带有X位数字的漂亮字符串,然后将格式化的字符串转换为数字。
Number( (myVar).toFixed(2) )
请参阅以下示例:
var myNumber = 5.01;
var multiplier = 5;
$('#actionButton').on('click', function() {
$('#message').text( myNumber * multiplier );
});
$('#actionButton2').on('click', function() {
$('#message').text( Number( (myNumber * multiplier).toFixed(2) ) );
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<button id="actionButton">Weird numbers</button>
<button id="actionButton2">Nice numbers</button>
<div id="message"></div>
该
toFixed()
方法使用定点表示法格式化数字。
这是语法
numObj.toFixed([digits])
digits参数是可选的,默认情况下为0。返回类型为字符串而不是数字。但是您可以使用将其转换为数字
numObj.toFixed([digits]) * 1
它也可以抛出异常喜欢TypeError
,RangeError
这是浏览器的全部细节和兼容性。
我做了这个功能。它工作正常,但返回字符串。
function show_float_val(val,upto = 2){
var val = parseFloat(val);
return val.toFixed(upto);
}