每三位数据加逗号,超过8位数据加单位“万”

134 阅读1分钟

数据加逗号,便于阅读,针对大数据,加单位更利于阅读。 实现原理:将数组转成字符串操作,避免精度丢失,造成数据错误!

const addCommatoData = (data) => {
  data = String(data).split('.')
  let int = data[0]
  let float = data[1]
  int = int.replace(/(?=(\B)(\d{3})+$)/g, ',')
  if (data.length === 1) {
    return int
  } else {
    return int + '.' + float
  }
}

function makeUpData(data) {
  if (data >= 0) {
    let newData = String(data).split('.')
    let int = newData[0]
    let float = newData[1] || ''
    if (int.length > 8) {
      return addCommatoData(parseFloat(int.slice(0, -4) + '.' + int.slice(-4) + float).toFixed(1)) + '万'
    } else {
      return addCommatoData(data)
    }
  } else {
    return null
  }

}
console.log(makeUpData(10001))
// 打印结果:10,001