In Javascript / Jquery What Is The Best Way To Convert A Number With A Comma Into An Integer?
I want to convert the string '15,678' into a value 15678. Methods parseInt() and parseFloat() are both returning 15 for '15,678.' Is there an easy way to do this?
Solution 1:
The simplest option is to remove all commas: parseInt(str.replace(/,/g, ''), 10)
Solution 2:
One way is to remove all the commas with:
strnum = strnum.replace(/\,/g, '');
and then pass that to parseInt:
var num = parseInt(strnum.replace(/\,/g, ''), 10);
But you need to be careful here. The use of commas as thousands separators is a cultural thing. In some areas, the number 1,234,567.89
would be written 1.234.567,89
.
Solution 3:
If you only have numbers and commas:
+str.replace(',', '')
The +
casts the string str
into a number if it can. To make this as clear as possible, wrap it with parens:
(+str.replace(',', ''))
therefore, if you use it in a statement it is more separate visually (+ +x looks very similar to ++x):
var num = (+str1.replace(',', '')) + (+str1.replace(',', ''));
Javascript code conventions (See "Confusing Pluses and Minuses", second section from the bottom):
Solution 4:
You can do it like this:
var value = parseInt("15,678".replace(",", ""));
Solution 5:
Use a regex to remove the commas before parsing, like this
parseInt(str.replace(/,/g,''), 10)
//or for decimals as well:parseFloat(str.replace(/,/g,''))
Post a Comment for "In Javascript / Jquery What Is The Best Way To Convert A Number With A Comma Into An Integer?"