数值转换之parseInt()和parseFloat()
parseInt()
适用:只适用于字符串转换为整数,可以转换十六进制数、十进制数和八进制数
转换规则:从第一个数字字符或负号开始,到非数字字符结束,空字符转换结果为NaN(Number()则返回0),函数的返回结果要么为NaN,要么为十进制整数。
语法:第一个参数为要转换的字符串,第二个为该字符所代表数值的进制,从什么进制转换为十进制。
parseInt("1.2e4",10); //1
parseInt("123abc",10); //123
parseInt("012",8); //10
parseInt("0xAFjk",16); //175,jk忽略
parseInt("0xAFjk"); //175,十进制和十六进制不填写第二个参数也可以,但八进制必须填写
parseInt("070"); //70,parseInt并没有把070当做8进制来进行转换
parseFloat()
适用:只适用于字符串转换为浮点数或整数,能转换成整数的会转换成整数
转换规则:从第一个数字字符或负号开始,到第二个小数点或其他非数字字符(字符e有特殊)结束,只解析十进制数。
parseFloat("123abc"); //123,整数
parseFloat(""); //NaN
parseFloat("3.14jk"); //3.14
parseFloat("0098.1"); //98.1,前导0省略
parseFloat("3.12e5"); //312000,这里的e是特殊的
感谢阅读!