javascript格式价格

时间:2011-10-14 19:36:49

标签: javascript format

我希望将变量格式化为价格格式,如果它是例如$ 90,则忽略它已经做过的小数。但如果价值是44.5美元,那么我想将其格式化为44.50美元。我可以在php而不是javascript中完成。

PHP示例:

number_format($price, !($price == (int)$price) * 2);

我要格式化的代码:

$(showdiv+' .calc_price span').html(sum_price);

3 个答案:

答案 0 :(得分:17)

var price = 44.5;    
var dplaces = price == parseInt(price, 10) ? 0 : 2;
price = '$' + price.toFixed(dplaces);

答案 1 :(得分:1)

答案 2 :(得分:1)

试试这个

function priceFormatter(price)
{
    //Checks if price is an integer
    if(price == parseInt(price))
    {    
        return "$" + price;
    }

    //Checks if price has only 1 decimal
    else if(Math.round(price*10)/10 == price)
    {
        return "$" + price + "0";
    }

    //Covers other cases
    else
    {
        return "$" + Math.round(price*100)/100;
    }
}