js保留小数点后几位标准写法

854 阅读1分钟
  1. 简单的 toFixed()方法
var num =2.446242342;  
num = num.toFixed(2);  // 2.45
typeof num // string
  1. 不保留向下取整数: Math.floor(num),
num = Math.floor(num);  // 2 向下取整
typeof num // number
  1. 向上取整: Math.ceil(num)
num = Math.ceil(num);  // 3 向上取整
typeof num // number
  1. 四舍五入: Math.round(num)
num = Math.round(num);
typeof num // number

但是 toFixed存在浏览器兼容性问题, 并不是最优选择.另外的方法就是先变成整数,再除以对应位数

// num 要 四舍五入的数字
// i 精度
commonToFixed(num, i) {
    let curNum = num * ( i * 10);
    curNum = ((Math.round(curNum)) / (i * 10)).toFixed(i);
    return curNum;
}

// 方法二: 2
// index为精度
parseInt(number * index)/index