Форматирование чисел на javascript

Иногда возникает необходимость считать что-либо на javascript и числа попадаются большие, например 1236547978.25. Читать такое число для пользователя крайне неудобно, укда приятнее видеть 1 236 547 978.25, где сразу понятно хотя бы разрядность числа. Форматируются такие числа довольно-таки просто.

 

function commafy(num, sThousandsSeparator)
{
    if(!sThousandsSeparator) {
        sThousandsSeparator = " ";
    }
    var bNegative = (num < 0);     
    var sDecimalSeparator = ".";     
    sOutput = num.toString();     
    nDotIndex = sOutput.lastIndexOf(sDecimalSeparator);     
    nDotIndex = (nDotIndex > -1) ? nDotIndex : sOutput.length;
    var sNewOutput = sOutput.substring(nDotIndex);
    var nCount = -1;
    for (var i=nDotIndex; i>0; i--) {
            nCount++;
            if ((nCount%3 === 0) && (i !== nDotIndex) && (!bNegative || (i > 1))) {
                    sNewOutput = sThousandsSeparator + sNewOutput;
            }
            sNewOutput = sOutput.charAt(i-1) + sNewOutput;
    }
    sOutput = sNewOutput;
    return sOutput;
}

В эту функцию пердается само число и разделитель для числа. Некоторые любят, к примеру, разделять тысячи запятыми.
Кстати, для желающих изучать js более подробно рекомендую форум по javascript — сам когда-та начинал с него, причем не только по js знания черпал оттуда.