How can i format currency related data in a manner that is culture aware in JavaScript?
Asked
Active
Viewed 6,466 times
4 Answers
3
So I know this is an old question, but incase anyone else shows up looking for similar answers, in modern JavaScript you can use
new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format(number)
For more info here is the reference doc.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat

Hans
- 89
- 1
- 8
2
Dojo has a currency formatter that's locale aware.
If you don't want to include Dojo in your project just for this function, then perhaps you can localize the currency in your back-end?

sherbang
- 15,696
- 1
- 22
- 16
-
2I believe the Dojo currecy formatting is based on XML data from the Unicode Common Locale Data Repository (http://unicode.org/cldr). While Dojo will do the hard work for you, if you don't want to use it you can get the raw data from there. – georgebrock Sep 09 '08 at 10:54
0
Number.toLocaleString (implemented in JavaScript 1.5, ECMAScript 3rd Edition)
var number = 3500;
console.log(number.toLocaleString()); /* Displays "3,500" in English locale */

laktak
- 57,064
- 17
- 134
- 164
-
This might not work in a node.js environment. you might need to load 'intl' and locale files. – Achim Koellner Dec 17 '18 at 13:06
-4
There is the Number.localeFormat()
function, but I'm not sure it's what you're after.

Michael M.
- 10,486
- 9
- 18
- 34

Christian Hagelid
- 8,275
- 4
- 40
- 63