将数字值转换为美元格式以便以适当的可见格式显示
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将数字值转换为美元格式以便以适当的可见格式显示相关的知识,希望对你有一定的参考价值。
试图在扣除一些价值但没有像$8,657.00
这样的类型之后在javascript中执行类似dollarFormat的操作
因为这是一项小任务,我不想为此使用任何库,但是我想在数字之前使用警告获取$符号,但是当它们增加时如何管理金额和小数,并放在需要的正确位置
答案
使用toLocaleString
- https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/toLocaleString
const dollarFormat = (amount) => {
return amount.toLocaleString('en-US', {
style: 'currency',
currency: 'USD',
minimumFractionDigits: 2
})
}
console.log(dollarFormat(8657))
另一答案
您没有指定是否要在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 ) );
以上是关于将数字值转换为美元格式以便以适当的可见格式显示的主要内容,如果未能解决你的问题,请参考以下文章