实现数字的千分位,表示,

发布时间:2024年01月14日

?重点如下

  1. 区分是否是负数
  2. 区分是否有小数点
  3. 使用正则表达式
  4. \B 是指非单词边界
  5. ?= 是正向查找
  6. ?! 是负向查找
  7. + 代表有一个或者多个
  8. () 是分组
  9. g 代表全局匹配
function splitStr(num) {
    // 转化成字符串
    let numStr = `${num}`
    let isNegative = false
    if (numStr.startsWith('-')) {
        isNegative = true
        numStr = numStr.slice(1)
    }
    const parts = numStr.split('.')
    let integerPart = parts[0]
    let decimalPart = parts[1] || ''
    integerPart = integerPart.replace(/\B(?=(\d{3})+(?!\d))/g, ',')
    let result = integerPart
    if (decimalPart) {
        result = integerPart + '.' + decimalPart
    }
    if (isNegative) {
        result = `-` + result
    }
    return result
}

const num = 12323.333
const reuslt = splitStr(num)
console.log(reuslt)

文章来源:https://blog.csdn.net/qq_17335549/article/details/135579464
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。