JQuery将货币/货币四舍五入到小数点后两位
如何使用算术惯例将金额四舍五入为两位小数
167,7451四舍五入到167,75
12,1819784四舍五入为12,18
注意我想用数学方法来做,并返回一个浮点数,而不是一个字符串,所以简单的格式化解决方案并不是我正在寻找的。
到目前为止,我发现以下内容:
amount = 167.7451;
rounded = (amount.toFixed(2));
alert(rounded);
然而,toFixed()的结果是一个字符串,所以如果我需要做更多的计算,我需要再次将字符串解析为一个浮点数。
.toPrecision方法反而想知道我需要多少个数字,以便将数量四舍五入到我需要的两位小数:
amount = 167.7451;
alert(amount.toPrecision(5));
这很荒谬,因为我需要首先知道小数点前有多少数字。
167.7451 is rounded to <span class="result1"></span>
<br>By adding 10 result is: <span class="result2"></span>
<br>By adding rounded 0.254999 result is: <span class="result3"></span>
<script type="text/javascript">
window.jQuery(document).ready(function($){
function my_round(num) {
return Math.round(num * 10 * 10) / 100;
}
var amount = 167.7451,
amount1 = my_round(amount),
amount2 = amount1 + 10,
amount3 = amount2 + my_round(0.254999);
window.jQuery('.result1').text( amount1 );
window.jQuery('.result2').text( amount2 );
window.jQuery('.result3').text( amount3 );
});
</script>
更新的代码应该可以工
链接地址: http://www.djcxy.com/p/21375.html上一篇: JQuery round off money / currency to 2 decimals
下一篇: Math.round(num) vs num.toFixed(0) and browser inconsistencies