So I have a value in Javascript:
var val = Entry.val;
One example of this value is 277385
. How do I, in Javascript, convert th
function addCommas(nStr)
{
nStr += '';
x = nStr.split('.');
x1 = x[0];
x2 = x.length > 1 ? '.' + x[1] : '';
var rgx = /(\d+)(\d{3})/;
while (rgx.test(x1)) {
x1 = x1.replace(rgx, '$1' + ',' + '$2');
}
return x1 + x2;
}
via here.
I'm not sure why the other answers split the number on a decimal point- you can replace, starting with a digit,until there are no more digits. It will quit when it runs out of digits or hits a non-digit.
function addCommas(n){
var rx= /(\d+)(\d{3})/;
return String(n).replace(/^\d+/, function(w){
while(rx.test(w)) w= w.replace(rx,'$1,$2');
return w;
});
}
val.replace(/(\d{1,3})(?=(?:\d{3})+$)/g,"$1,")
:-)
This should do it for you:
Function:
function addCommas(nStr)
{
nStr += '';
x = nStr.split('.');
x1 = x[0];
x2 = x.length > 1 ? '.' + x[1] : '';
var rgx = /(\d+)(\d{3})/;
while (rgx.test(x1)) {
x1 = x1.replace(rgx, '$1' + ',' + '$2');
}
return x1 + x2;
}
Usage:
addCommas(1000)
// 1,000
addCommas(1231.897243)
// 1,231.897243
Thanks to mredjk.com