0

私は 10 進数 * (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 に答える