欢迎光临散文网 会员登陆 & 注册

华纳公司客服——SKSKFC

2023-04-14 20:13 作者:技术之心  | 我要投稿

js去掉小数末尾多余的0,并且最多保留两位小数

比如:

'' -> 0
0.00 -> 0
1 -> 1
1.10 -> 1
1.213000 -> 1.21
1.01 -> 1.01

代码如下:


思路

用JavaScript的parseFloat函数,parseFloat(’ ') 是NaN,返回0,然后用parseFloat转换字符串或者数字,判断是否是小数并且小数点后超过两位,超过两位就转成两位小数,不超过就直接返回。


  function unifyNumber(num) {
    if (num === '') {
      return 0
    } else {
      let handleNum = parseFloat(num)
      let isToFixed = handleNum.toString().includes('.') && handleNum.toString().split('.')[1].length > 2
      if (isToFixed) {
        return handleNum.toFixed(2)
      } else {
        return handleNum
      }
    }
  }

注意: 如果字符串的第一个字符不能被转换为数字,那么 parseFloat() 会返回 NaN


js去掉小数点后面的0 (uniapp 和 vue比较适用)

在项目中后端返回的数据是这样的

由于移动空间比较小,00 也比较占用空间,干脆去掉,美观又好看

1
2
var a=11.00;console.log(a);;数字类型用的时候直接就去掉了无用的0
var a=‘11.00';console.log(Number(a));

字符串类型转成数字类型也就直接去掉了后面没用的0



华纳公司客服——SKSKFC的评论 (共 条)

分享到微博请遵守国家法律