JS:给数字添加千分位符(每3位数用逗号隔开)

背景

  • 如果一串数字的长度太长,就不方便阅读,因此可以采用分隔符对数字进行分割
  • 本文的分割规则是:
    如果数字的长度大于等于5则进行分割,每3位数用逗号分割开

解决

  • 数字可以分为:number类型的数字和字符串类型的数字,这2者的处理略有不同
  • 其次,判断数字的长度是否大于等于5,若大于等于5,则用分隔符对数字进行分割
1、字符串类型的数字
// 字符串类型的数字
// 测试1:
var str = "12345678"
if (str.length >= 5) {
    console.log(str.replace(/(\d)(?=(?:\d{3})+$)/g, '$1,'))
} else {
    console.log(str)
}
// 测试2
var str1 = "1234"
if (str1.length >= 5) {
    console.log(str1.replace(/(\d)(?=(?:\d{3})+$)/g, '$1,'))
} else {
    console.log(str1)
}
// 测试3:
var str2 = "12345"
if (str2.length >= 5) {
    console.log(str2.replace(/(\d)(?=(?:\d{3})+$)/g, '$1,'))
} else {
    console.log(str2)
}
  • 结果如下:
    在这里插入图片描述
2、number类型的数字
// number类型的数字
// 测试1:
var num = 1234567
// 先把数字类型转换成字符串才能获取数字的长度
if ((num + "").length >= 5) {
    console.log(num.toLocaleString("en-US"))
}
else {
    console.log(num)
}
// 测试2:
var num1 = 1234
// 先把数字类型转换成字符串才能获取数字的长度
if ((num1 + "").length >= 5) {
    console.log(num1.toLocaleString("en-US"))
}
else {
    console.log(num1)
}
// 测试3:
var num2 = 12345
// 先把数字类型转换成字符串才能获取数字的长度
if ((num2 + "").length >= 5) {
    console.log(num2.toLocaleString("en-US"))
}
else {
    console.log(num2)
}
  • 结果如下:
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值