0

我有一个十进制数* (28045.124578) *,我希望它被转换,以便使用 javascript 以千币格式($28.0K)显示。

我正在使用这个脚本 tp convert 但这没有帮助

function kFormatter(num) {
num = num.toString().replace(/\$|\,/g, '');
if (isNaN(num))
{
    num = "0";
}
num = Math.floor(num * 100 + 0.50000000001);
cents = num % 10;
num = Math.floor(num / 100000).toString();
//console.log('num=', num/1000);
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 num + '.' + cents;

}

但这无济于事。请建议。

4

1 回答 1

0

您可以使用 round 来获得最接近的整数。

function kformatter(num){
    var newvalue =  Math.round(num/100);
    return newvalue?(newvalue/10)+"K":num;
} 
于 2013-10-10T09:05:26.563 回答