从右到左用逗号分隔数字(数字分组)。

3
我使用以下代码将数字用逗号分隔: jQuery(this).val((jQuery(this).val().replace(/(\d{3}(?!,))/g, ",$1")));
  • 如果我的数字是12345,它将变成123,45
  • 但我想让逗号从右边开始分隔,即12,345
3个回答

5
如果您的数字是一个没有逗号的字符串或数字本身,则可以简单地使用 toLocaleString方法在千位之间显示逗号。

let str1  = parseInt('1234').toLocaleString('en')
let str2  = parseInt('12345').toLocaleString('en')
let str3  = parseInt('123456').toLocaleString('en')

console.log(str1)
console.log(str2)
console.log(str3)


这是最好的国际化方式,因为在所有地方都不是逗号作为分组分隔符,也不是3位数字作为分组数量。在德国/奥地利/法国,适当的分组应该是1.024.000,在瑞士,适当的分组应该是2'048'000,在印度,适当的分组应该是40,96,000... - AmigoJack

2
你尝试过以下方法吗?
function numberWithCommas(x) {
    return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}

console.log(numberWithCommas(12345)); // Output: "12,345"
console.log(numberWithCommas(123456789)); // Output: "123,456,789"

点击这里获取更多详细信息,了解如何在JavaScript中使用逗号作为千位分隔符打印数字。


1

一种方法是将

  • (?<=\d)(?=(?:\d{3})+(?!\d))

替换为

  • ,

演示和解释


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接