您的位置:首页 > Web前端 > JavaScript

js函数 Number()、parseInt()、parseFloat()的区别:

2013-01-10 15:38 525 查看
Number()、parseInt()、parseFloat()的区别:

Number()的强制类型转换与parseInt()和parseFloat()方法的处理方式相似,只是它转换的是整个值,而不是部分值。parseInt()和parseFloat()方法只转换第一个无效字符之前的字符串。如“3.4.5”被转换成“3.4”,

用Number()进行强制类型转换将返回NAN,

如果字符串值能被完整地转换,Number()将判断是调用parseInt()还是parseFloat()。

Js代码







var bb = "35.23ace23";
document.write(Number(bb)); //NaN

document.write(parseFloat(bb)); //35.23

document.write(parseFloat(Number(bb))); //NaN

var bb = "35.23ace23";
document.write(Number(bb));                    //NaN
document.write(parseFloat(bb));                //35.23
document.write(parseFloat(Number(bb)));        //NaN


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

Number.toFixed(x) 是将指定数字截取小数点后 x 位, Number.toPrecision(x) 是将整个数字截取指定(x)长度。

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

Math.round() 方法可把一个数字舍入为最接近的整数。

Js代码







var aa = 2.3362;
document.write(aa.toFixed(1)); // 2.3

document.write(aa.toFixed(2)); // 2.34

document.write(aa.toPrecision(2)); // 2.3

document.write(aa.toPrecision(3)); // 2.34

document.write(Math.round(-4.60)); // -5

document.write(Math.round(aa * 10) / 10); // 2.3

document.write(Math.round(aa * 100) / 100); // 2.34
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: