微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

深入理解JS中Number(),parseInt(),parseFloat()三者比较

参考阅读:

在项目开发中我们经常会用到转型方法,尤其是JS这种松散型的语言。其中比较常用的方法就是Number()方法和ParseInt()/ParseFloat()方法了,下面我们分别对这几种方法的转型机制进行详细地说明。具体内容详情如下所示:

正文内容

  Number()

------------------------------------------------------------------------------------- --Number() -- -- --Boolean值,true和false值将分别被转为1和0。 -- --数字值,整型就是整型,浮点型就是浮点型,科学计数就科学计数 -- --null值,转为0 -- --二进制,八进制,十六进制格式,转为十进制的数值 -- --字符串为空,转为0 -- --字符串中是纯科学计数,数值会直接转为十进制的数值 -- --undefined,对象,数组,字符串不为纯数字和科学计数时 返回NaN

------------------------------------------------------------------------------------ 

rush:js;">  //JS区分0和-0 var num = 123; var num = 123.123; var num = 0b10; var num = 010; var num = 0xff; var num = 5e2; var num = 5e-2; var num = NaN; console.log('值: ',num); console.log('类型: ',typeof(num)) //NaN本身为false //其他类型转为数值失败时都为NaN console.log(NaN - 100); if(NaN){ console.log('Yes'); }else{ console.log('No'); } //NaN var a = '123ad'; //123 var a = '123'; //NaN var a = 'f3ad'; //0 var a = false; //1 var a = true; //NaN var a = undefined; var a = new Object(); var a = Array(1,23); //1e+124 var a = 10e123; //3 var a = 0b11; //255 var a = 0xff; //1.23 var a = 1.23; //0 var a = ''; //1200 var a = '12e2'; //0 var a = null; //90 var a = 0132; var n = Number(a); console.log(n);

parseInt()

---------------------------------------------------------------------------------------------------------------------------------------- --parseInt() -- -- --数值正常转化,如果为浮点数,则转为整型,舍弃小数点后的数值 -- --字符串起始包含数字时则数字那段转为数值,后面舍弃 -- --二进制,十六进制转化时,转化为十进制的数值 -- --科学计数法,能解析时正常解析,不能时返回第一个数字 -- --Boolean,undefined,空字符串,字符串开头不为纯数字和科学计数时 返回NaN -- --parseInt()方法还有基模式,可以把二进制、八进制、十六进制或其他任何进制的字符串转换成整数。 ----------------------------------------------------------------------------------------------------------------------------------------

rush:js;"> //123 var a = '123ad'; //123 var a = '123'; //NaN var a = 'f3ad'; //NaN var a = false; //NaN var a = true; //NaN var a = undefined; var a = new Object(); //13 第一个值 var a = Array(13,2); //3100000能够解析处时正常解析,不能时只返回第一个数字 var a = 31e5; //3 var a = 0b11; //255 var a = 0xff; //1 var a = 1.23; //NaN var a = ''; //12 字符串只返回12e舍弃 var a = '12e2'; //NaN var a = null; //1 var a = 1.5; //90 var a = 0132; var n = parseInt(a); console.log(n); var a = parseInt("10",2); var a = parseInt("FF",16); var a = parseInt("10",8); console.log(a);

 parseFloat()

-------------------------------------------------------------------------------------------------------------------------------- --parseFloat() -- -- --数值正常转化,整型为整型,浮点型为浮点型 -- --字符串起始包含数字时则数字那段转为数值,超出范围则返回Infinity -- --Boolean,字符串开头不为纯数字和科学计数时 返回NaN -- --不能有多个小数点报语法错误 --------------------------------------------------------------------------------------------------------------------------------

rush:js;"> //123 var a = '123ad'; //123 var a = '123'; //NaN var a = 'f3ad'; //NaN var a = false; //NaN var a = true; //NaN var a = undefined; var a = new Object(); //13 第一个值 var a = Array(13,2); //3100000 范围过大将转为科学计数法再大将为Infinity var a = 31e5; //3 var a = 0b11; //255 var a = 0xff; //1.23 var a = 1.23; //NaN var a = ''; //1200 var a = '12e2aa'; //NaN var a = null; //1.5 var a = 1.5; //90 var a = 0132; // var a = 1.113; var n = parseFloat(a); console.log(n);

总结

以上所述是小编给大家介绍的深入理解JS中Number(),parseInt(),parseFloat()三者比较。编程之家 jb51.cc 收集整理的教程希望能对你有所帮助,如果觉得编程之家不错,可分享给好友!感谢支持

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐