Вы не указали, хотите ли вы достичь этого в CF или JS, поэтому в следующем примере предполагается, что JS.При необходимости вы можете преобразовать логику в CF.
Ниже приведена функция для форматирования числа с использованием REGEX
:
function dollarFormat( amount, fractionDigits ) {
if( isNaN( amount ) || isNaN( fractionDigits ) ) {
throw 'Invalid arguments';
}
var splitResults = amount.toFixed( fractionDigits ).split( '.' ),
integer = splitResults[ 0 ],
fraction = splitResults[ 1 ] || '';
return '$' + integer.replace( /([0-9])(?=(?:[0-9]{3})+(?:\.|$))/g, '$1,' ) + ( fraction.length ? '.' + fraction : '' );
}
console.log( dollarFormat( 8657.00, 2 ) );
console.log( dollarFormat( 8657.00, 0 ) );
console.log( dollarFormat( 12234348657.00000, 4 ) );
console.log( dollarFormat( 8657.000000000, 4 ) );