# Inserting commas into numbers (SOLVED)

3 posts

 I’d like to have commas every three digits in my score display to make it easier to read. I had this problem once before, in my AS2 days, and I solved it by seperating each digit of the number and then arranging the number like so: ten thousands digit, thousands digit, comma, hundreds digit, tens digit, ones digit. Obviously that’s a lot of excessive code. I know that I can turn my score to a string, work out how many characters there are in the string, and then insert the comma in between characters 2 and 3 for example. But I don’t know what the functions are that I need to use. Can someone please tell me what they are? -Yoshiyahu PS. Unless someone already has an algorithm I can steal that calculates it for me, without an if statement for every possible number of digits. this issue came up many years ago, i and another programmer got into a performance war over it and this was my final result: ` final protected function numberDelimiter2(num:Number, decimalPrecision:int = 0, delimiter:String = ",", charGroup:uint = 3):String { var d:String = num.toFixed(decimalPrecision); if (int(charGroup == 0) | charGroup >> 31) return d; var n:int = int(num < 0), len:int = d.length - n - (decimalPrecision + int(decimalPrecision > 0)); if (len <= charGroup) return d; if (len % charGroup) { var c:int = n + len % charGroup, o:String = d.substring(0, c); while (~(((len -= charGroup) >> 31))) { o = o + delimiter + d.substring(c, c += charGroup); } return o + d.substring(c); } var count:int = n + charGroup, out:String = d.substring(0, count); while (len -= charGroup) { out = out + delimiter + d.substring(count, count += charGroup); } return out + d.substring(count); }` i could improve its performance substantially by using a ByteArray, but it won’t be used often enough to warrant that Thanks again mate, works perfectly!