js 操作数字类型

时间:2023-03-08 15:36:56

1.内置函数

Number()、parseInt()、parseFloat()

  1. var num = "88.88abc888";
  2. Number(num);                    //NaN
  3. parseFloat(num);                //88.88
  4. parseFloat(Number(num));   //NaN

2.Number.toFixed(x) 、 Number.toPrecision(x) 、 Math.Round(x)的区别:

都有四舍五入的功能。

Number.toFixed(x) 是将指定数字截取小数点后 x 位。

Number.toPrecision(x) 是将整个数字截取指定 x 长度。

注意:一个是计算小数点后的长度,一个是计算整个数字的长度 。

Math.round(x) 方法把 x 舍入为最接近的整数。

  1. var num = 123.456;
  2. num.toFixed(1);                 // 123.5
  3. num.toPrecision(2);             // 1.2e+2
  4. num.toPrecision(3);             // 123
  5. Math.round(-4.60);              // -5
  6. Math.round(num * 10) / 10;      // 123.5
  7. Math.round(num * 100) / 100;    // 123.46

3.小数操作:

// 将浮点数四舍五入,取小数点后2位

function formatFloat(x) {

var f = Number(x);

if (isNaN(f))

return;

f = Math.round(x*100)/100;

return f;

}

// 保留2位小数,不足补0

function formatFloat(x) {

var f = Number(x);

if (isNaN(f))

return false;

var f = Math.round(x*100)/100;

var s = f.toString();

var rs = s.indexOf('.');

if (rs < 0) {

rs = s.length;

s += '.';

}

while (s.length <= rs + 2) {

s += '0';

}

return s;

}