我有一个变量,它由另外两个变量的乘法组成
var EstimatedTotal = GetNumeric(ServiceLevel) * GetNumeric(EstimatedCoreHours);
Run Code Online (Sandbox Code Playgroud)
是否有可能,如果是这样,或者被调用的函数是什么,将其格式化为货币?我一直在谷歌上搜索我只能找到一个功能,我见过的唯一方法真的,真的很长
取自这里:http://javascript.internet.com/forms/currency-format.html.我用过它并且效果很好.
function formatCurrency(num)
{
num = num.toString().replace(/\$|\,/g, '');
if (isNaN(num))
{
num = "0";
}
sign = (num == (num = Math.abs(num)));
num = Math.floor(num * 100 + 0.50000000001);
cents = num % 100;
num = Math.floor(num / 100).toString();
if (cents < 10)
{
cents = "0" + cents;
}
for (var i = 0; i < Math.floor((num.length - (1 + i)) / 3); i++)
{
num = num.substring(0, num.length - (4 * i + 3)) + ',' + num.substring(num.length - (4 * i + 3));
}
return (((sign) ? '' : '-') + '$' + num + '.' + cents);
}
Run Code Online (Sandbox Code Playgroud)
如果您正在寻找一个快速功能,可以将您的号码(例如:1234.5678)格式化为:$ 1234.57,您可以使用.toFixed(..)方法:
EstimatedTotal = "$" + EstimatedTotal.toFixed(2);
Run Code Online (Sandbox Code Playgroud)
toFixed函数采用整数值作为参数,这意味着尾随小数的数量.有关此方法的更多信息,请访问http://www.w3schools.com/jsref/jsref_tofixed.asp.
否则,如果您希望输出格式为:$ 1,234.57,则需要为此实现自己的功能.以下是两个实现链接: