使用 Number.prototype.toLocaleString 方法
const amount = 3214234.4535
const formattedAmount = amount.toLocaleString('zh-CN', {
currency: 'CNY',
minimumFractionDigits: 2,
maximumFractionDigits: 2,
})
console.log(formattedAmount)
使用 Intl.NumberFormat 构造函数
const amount = 3422.435
const locale = 'en-US'
const options = {
currency: 'USD',
}
const formattedAmount = new Intl.NumberFormat(locale, options).format(amount)
console.log(formattedAmount)
使用正则表达式
const amount = 3422.435;
const formattedAmount = (amount ?? '').toString().replace(/^-?\d+/g, m => m.replace(/(?=(?!\b)(\d{3})+$)/g, ','))
console.log(formattedAmount);