在javascript中转换为2种货币格式

时间:2014-07-01 04:23:07

标签: javascript

我如何变成金钱串? 1200应为1,200

 function setdefaults() {
    document.getElementById('perpetual').checked = true
    document.getElementById('users').value = '1'; 
    math_perpetual = parseInt(document.getElementById('users').value) *   1200; 
    document.getElementById('result').innerHTML = "The total price is $" + math_perpetual;
}

4 个答案:

答案 0 :(得分:1)

查看number类中的toLocaleString函数:

MDN页面的示例:

var number = 123456.789;

// request a currency format
alert(number.toLocaleString("de-DE", {style: "currency", currency: "EUR"}));
// → 123.456,79 €

// the Japanese yen doesn't use a minor unit
alert(number.toLocaleString("ja-JP", {style: "currency", currency: "JPY"}))
// → ¥123,457

// limit to three significant digits
alert(number.toLocaleString("en-IN", {maximumSignificantDigits: 3}));
// → 1,23,000 * doesn't work for chrome

答案 1 :(得分:1)

我认为使用可以为您处理它的库会更容易。我使用currencyFormatter.js - 尝试一下。适用于所有浏览器,非常轻巧。它还会为您添加货币符号,并可以根据指定的区域设置进行格式化:

OSREC.CurrencyFormatter.format(2534234, { currency: 'INR' }); // Returns ₹ 25,34,234.00
OSREC.CurrencyFormatter.format(2534234, { currency: 'EUR' }); // Returns 2.534.234,00 €
OSREC.CurrencyFormatter.format(2534234, { currency: 'EUR', locale: 'fr' }); // Returns 2 534 234,00 €

currencyFormatter.js on github

答案 2 :(得分:0)

以下代码将以美元格式化您的资金:

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

答案 3 :(得分:0)

function addThousandsSeparators(n) {
  return (''+n).split('').reverse().join('')
      .match(/(\d{1,3})/g).join(',').split('')
      .reverse().join('');
}

addThousandsSeparators(123);        // =>           "123"
addThousandsSeparators(1234);       // =>         "1,234"
addThousandsSeparators(12345);      // =>        "12,345"
addThousandsSeparators(123456);     // =>       "123,456"
addThousandsSeparators(1234567);    // =>     "1,234,567"
addThousandsSeparators(12345678);   // =>    "12,345,678"
addThousandsSeparators(123456789);  // =>   "123,456,789"
addThousandsSeparators(1234567890); // => "1,234,567,890"