Recently I was working on a project where I had to take a number that represented a monetary value and display it as money. For example say I had a numeric variable that contained the value of 10000 and I needed it to display like money with the commas and dollar sign like this $10,000. So in other words I needed the string representation. That is what this simple function that I am posting does. I have written it here in Flash ActionScript 3 as a static function of a class, but you could adapt it however you need to. Here is the code:
public class Formatter { public static function formatMoney(val:int):String { var isNegative:Boolean = false; var moneyVal:String = val.toString(); var len:uint; if(val < 0) { isNegative = true; moneyVal = moneyVal.replace(/-/, ""); } len = moneyVal.length; for(var i:int=len; i>0; i-=3) { if(i == len) { continue; } var firstHalf:String = moneyVal.substring(0, i); var lastHalf:String = moneyVal.substring(i); moneyVal = firstHalf+","+lastHalf; } if(isNegative) { return"$-"+moneyVal; } return "$"+moneyVal; } }