将数字值转换为美元格式以便以适当的可见格式显示

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 ) );

以上是关于将数字值转换为美元格式以便以适当的可见格式显示的主要内容,如果未能解决你的问题,请参考以下文章

js将人名币数字格式转换为为美元数字格式

如何将数字转换为美元格式

如何将一长串数字转换为格式化的小时数

iOS 从 NSNumberFormatter 字符串中取回值

使用 xlwt 格式化数字,以便零是破折号 (-)

如何在 PHP 中将数字格式化为美元金额