Monday, May 20, 2024
 Popular · Latest · Hot · Upcoming
83
rated 0 times [  90] [ 7]  / answers: 1 / hits: 93317  / 9 Years ago, thu, july 23, 2015, 12:00:00

How can I do this in JavaScript?



var num = 2046430; 
num.toLocaleString();

will give you 2,046,430;


What I have tried is:



var num = 2046430; 
num.toLocaleString().toFixed(2);


Expected Output




2,046,430.00



More From » javascript

 Answers
4

Taken from MDN:



Syntax



numObj.toLocaleString([locales [, options]])



toLocaleString takes 2 arguments. The first is the locale, the second are the options. As for the options, you are looking for:




minimumFractionDigits



The minimum number of fraction digits to use.
Possible values are from 0 to 20; the default for plain number and
percent formatting is 0; the default for currency formatting is the
number of minor unit digits provided by the ISO 4217 currency code
list (2 if the list doesn't provide that information).




https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString



To be able to set the options without setting the locale, you can pass undefined as first argument:



var num = 2046430;
num.toLocaleString(undefined, {minimumFractionDigits: 2}) // 2,046,430.00


However this also allows the fraction to be longer than 2 digits. So we need to look for one more option called maximumFractionDigits. (Also on that MDN page)



var num = 2046430.123;
num.toLocaleString(undefined, {
minimumFractionDigits: 2,
maximumFractionDigits: 2
}) // 2,046,430.12

[#65716] Monday, July 20, 2015, 9 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
maleahp

Total Points: 223
Total Questions: 102
Total Answers: 116

Location: Sao Tome and Principe
Member since Wed, Dec 29, 2021
2 Years ago
;