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.
<script>
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));
</script>
Call the formatTo function, passing the value to format and the precision (number of digits to the right of the decimal point.
More Java Script Code:
• Regular Expression Basics : How many Matches?
• Easy Slide Show Code With Linked Slides
• Use JavaScript parseInt() and parseFloat() to Convert Strings to Numbers
• Easy Expanding Banner Code
• Where Did the User Click?
• Round a Float to 4 Digits to the Right of the Decimal Point
• JavaScript to Add and Remove Rows and Cells from a Table
• Let Your Web site Visitors Set Font Size
• Easy Java Script Animation
• Convert Mixed Number to Decimal
