千分位分割

复制代码
/** 千分位分隔 */
export const millSeparationFormat = (num: string | number) => {
  if (!num) {
    return num
  }
  if (!Number(num) || Number(num) == NaN) {
    return num
  }
  const number = Number(num)
  const numArr = number.toString().split('.')
  /** 转换成字符数组并且倒序排列 */
  const reverseArr = numArr[0].split('').reverse()
  const res = [] as string[]
  for (let i = 0; i < reverseArr.length; i++) {
    if (i % 3 === 0 && i !== 0) {
      res.push(',')
    }
    res.push(reverseArr[i])
  }
  res.reverse()
  if (numArr[1]) {
    return res.join('').concat('.' + numArr[1])
  } else {
    return res.join('')
  }
}
复制代码

金钱格式化(千分):

let money = 11111111

method1:

  money.toLocaleString('en-US');// 只保留3位小数

method2:

  Intl.NumberFormat().format(money);// 只保留3位小数

method3:

  String(money).replace(/\B(?=(\d{3})+(?!\d))/g, ',');// 保留全部小数位

posted on   lyuyi  阅读(50)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结
点击右上角即可分享
微信分享提示