我有一点与我的JavaScript捐赠计算器的一个问题,它运作良好,但是当我计算的50百分比,它出现为$ 12.5和我想它是$ 12.50,这也影响$ 7.50之显示为7.5。
我已经包含了以下代码
<script>
$(function () {
$(document).on('change', '#selectUserNames', function () {
var selectedVal = $(this).val();
var userClaims = @Html.Raw(Json.Serialize(Model.GetUserClaims(selectedVal))); //////////PASSING VALUE HERE
if (selectedVal == 'ABC@GMAIL.COM') {
var html = '<option selected disabled>Select Claim:</option>';
for (var i = 1; i < userClaims.length; ++i) {
html = html + '<option>' + userClaims[i] + '</option>';
}
$('#selectAuthPolicy').html(html);
}
})
})
</script>
这里也是一个代码更易读的pastebin: goo.gl/UQZrik
最后,我尝试将变量cleanCostAfterCredit设置为12.50而不是12.5。此外,如果有人能给我任何提高我的代码效率的技巧,我会非常感激。请放在建设性的批评上:)
答案 0 :(得分:0)
使用.toFixed(2)
将返回表示2位小数的字符串。
var result = 12.5;
var resultWithDecimals = result.toFixed(2);
答案 1 :(得分:0)
toFixed方法格式化浮点数,但不具备文化意识。
donationAmount.toFixed(2)
如果您希望了解文化,请使用toLocaleString
console.log(
// This uses the default locale
(12.5).toLocaleString(undefined, {
style: 'currency',
currency: 'USD',
minimumFractionDigits: 2
})
);
console.log(
(1).toLocaleString('pt-br', {
style: 'currency',
currency: 'USD',
minimumFractionDigits: 2
})
);
&#13;