数字小数处理,处理精度问题

// 处理精度问题,有小数点保留两位,没有取整数值
priceFilter(val) {
  val = Math.round(val * 100) / 100
  const valStr = val.toString()
  if (valStr.indexOf('.') === -1) return Number(valStr)
  return Number(valStr.substr(0, valStr.indexOf('.') + 3))
}
// 价格显示(加逗号),一直保留两位小数
priceFilter(amount) {
  const aStr = (amount / 100).toFixed(2)
  let res = aStr.substring(aStr.indexOf('.'))
  const zheng = aStr.substring(0, aStr.indexOf('.'))
  for (let i = zheng.length - 1; i >= 0; i -= 3) {
    if (i - 2 > 0) res = ',' + zheng.substr(i - 2, 3) + res
    else res = zheng.substring(0, i + 1) + res
  }
  return res
}
posted @ 2022-10-17 19:32  jiazq  阅读(37)  评论(0)    收藏  举报