货币代码到locale JS

时间:2016-01-28 01:09:04

标签: javascript json currency

在这里幽默我,但我有一个简单的任务,即输入数字,并将其格式化为货币代码。

IE:

var value = 1000;
value.toLocaleString('en-AU, {
    style: 'currency',
    currency: 'AUD;,
    minimumFractionDigits: 2
});
// A$1,000.00

哪个有用 - 唯一的问题是,它位于一个函数中,我传递值和货币..

  

功能(价值,货币)

现在我必须维护一个区域映射的货币列表。是否有快速轻量的方式将数字格式化为货币。我很高兴发送一个区域而不是货币。无论哪种方式,我都不想保留两个列表。

2 个答案:

答案 0 :(得分:2)

如果你想要的是在哪里获得等价列表,我没有找到一个,但你可以建立匹配这些列表

货币: http://www.currency-iso.org/dam/downloads/lists/list_one.xml

区域设置: http://www.science.co.il/Language/Locale-codes.asp

答案 1 :(得分:1)

您不需要两个列表。只需要一个地图(对象),使用货币作为密钥,将区域设置作为值。

var currencyToLocale = {
  'AUD': 'en-AU'
    // etc...
};

function formatAsCurrency(value, currency) {
  // get the locale from the map...
  var locale = currencyToLocale[currency];

  return value.toLocaleString(locale, {
    style: 'currency',
    currency: currency,
    minimumFractionDigits: 2
  });
};

console.log(formatAsCurrency(1000, 'AUD'));