如何格式化美元? [复制]

Posted

技术标签:

【中文标题】如何格式化美元? [复制]【英文标题】:How to format a dollar? [duplicate] 【发布时间】:2011-07-17 11:11:51 【问题描述】:

可能重复:How can I format numbers as money in javascript?

我正在做一个除法和乘法来计算一个字段的值,这个值看起来像这样

$32560.000000000004.00

我正在设置这样的值

sq_footage = $("#sq_footage").val();
sq_footage_total = (((sq_footage / 36) * factor) * average )* 30;
if(factor != "")
    $("#new_calc").val("$" + sq_footage_total + ".00");

有没有办法像这样格式化

$32,560.00

【问题讨论】:

来自快速谷歌搜索:plugins.jquery.com/plugin-tags/currency-money-format ***.com/questions/149055/… google.com/… 【参考方案1】:

您的标签表明您正在使用 jquery - 所以您可以使用 jQuery Format Currency Plugin

【讨论】:

【参考方案2】:

我知道这个问题之前已经解决了,但我的解决方案只是为了好玩:

function formatDollar(num) 
    var p = num.toFixed(2).split(".");
    return ["$", p[0].split("").reverse().reduce(function(acc, num, i) 
        return num + (i && !(i % 3) ? "," : "") + acc;
    , "."), p[1]].join("");

还有一些测试:

formatDollar(45664544.23423) // "$45,664,544.23"
formatDollar(45) // "$45.00"
formatDollar(123) // "$123.00"
formatDollar(7824) // "$7,824.00"
formatDollar(1) // "$1.00"
formatDollar(939,009) // ?

function formatDollar(num) 
      var p = num.toFixed(2).split(".");
      return ["$", p[0].split("").reverse().reduce(function(acc, num, i) 
        return num + (i && !(i % 3) ? "," : "") + acc;
      , "."), p[1]].join("");
    


    const tests = [
      
        input: 45664544.23423,
        expected: "$45,664,544.23"
      ,
      
        input: 45,
        expected: "$45.00"
      ,
      
        input: 123,
        expected: "$123.00"
      ,
      
        input: 7824,
        expected: "$7,824.00"
      ,
      
        input: 1,
        expected: "$1.00"
      ,
      
        input: -939009,
        expected: "-$939,009.00"
      
    ]

    tests.forEach(test => 
      const  input, expected  = test
      const actual = formatDollar(input)
      if (expected !== actual) 
        console.log(`Failed: $input. Expected $expected; actual: $actual`)
       else 
        console.log(`Passed: $input`)
      
    )

【讨论】:

以上是关于如何格式化美元? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 PHP 中将数字格式化为美元金额

如何在带有彩色条的格式表中将数字显示为美元金额

如何将双精度格式设置为四舍五入到最接近的美元的货币?

使用美元符号和逗号格式化货币输入字段

PHP中从欧元货币格式到美元货币格式

如何使用 jquery 正确格式化货币?