parseFloat函数
代码如下 | 复制代码 |
parseFloat("abc") // 返回 NaN parseFloat("1.2abc") // 返回 1.2 |
parseInt函数
代码如下 | 复制代码 |
parseInt("abc") // 返回 NaN parseInt("12abc") // 返回 12 |
下面是一段 JavaScript 代码, 同样是将字符串 020 转为整型.
代码如下 | 复制代码 |
var str = "020"; var num = parseInt(str); alert(num); 输出结果是 16 |
无论是 Java 还是 JavaScript, parseInt 方法都有两个参数, 第一个参数就是要转换的对象, 第二个参数是进制基数, 可以是 2, 8, 10, 16, 默认以 10 进制处理. 但在 JavaScript 中, 0 开始的数被认为使用 8 进制处理, 0x 的数被认为是用 16 进制来处理. 所以上面的 JavaScript 代码计算错误了.
前面说过, 有两个参数, 第二个参数可以指定计算使用的进制.
parseInt(num, radix);
所以我们可以将前面有问题的那段 JavaScript 代码改写为下面的代码.
代码如下 | 复制代码 |
var str = "020"; var num = parseInt(str, 10); alert(num); |
有朋友可能会知道js中还可以强制转换数据类型,我们字符转换数值可使用强制Number()函数
Number(value)——把给定的值转换成数字(可以是整数或浮点数);
代码如下 | 复制代码 |
<script> var i="012.53"; //此处的i为字符型 i=Number(i); //此处的i为数值型 </script> |
•使用Number()函数,他会自动判断String中是整数还是浮点数,然后内部使用相应的数据类型,另外可以使用全局函数parseInt()和parseFloat(),他们根据你的要求进行转换
时间: 2024-10-04 10:50:21