Display a Value in Currency Format

To display a currency value with the proper number of digits to the right of the decimal point, first use the Math.pow function to calculate a multiplier, then use that multiplier to round the number to the required number of digits.

Convert that value to a string so you can determine the location of the decimal point, or if you need to add a decimal point, and if you need to add zeros to the decimal portion. Code to convert a value to currency format is shown below.

function formatTo(value, precision)
   // calculate multiplier required to get required number
   // of digits to the right of the decimal point
   var multiplier = Math.pow(10, precision);

   // round value to required number of digits
   var amount = Math.round(value * multiplier) / multiplier;

   // convert to string
   var strAmt = amount.toString();

   // determine if you need to add zeros to decimal part
   var decimalIndex = strAmt.indexOf(".");
   if(precision > 0 && decimalIndex < 0)
      decimalIndex = strAmt.length;
      strAmt += '.';

   // add any required zeros to decimal part
   while(decimalIndex + precision + 1 > strAmt.length)
      strAmt += '0';
   return strAmt;

document.write(formatTo(4.003, 2));

Call the formatTo function, passing the value to format and the precision (number of digits to the right of the decimal point.

Learn more at

More Java Script Code:
• Java Script Code to Calculate Speed / Distance of Falling Object
• How to Disable the Browser Back Button
• Allowing Multiple Selections from Drop-down Select List
• Calculate The Points of an Equilateral Triangle
• Submit Forms Without CGI
• JavaScript Code for Binary to Hexadecimal - Hexadecimal to Binary Conversion
• A JavaScript Function That Returns a Function
• JavaScript Cookbook
• Easy JavaScript FileReader Code
• Convert Mixed Number to Decimal