JavaScript数字字符转数据类型

来源:互联网 发布:尤里的复仇数据修改 编辑:程序博客网 时间:2024/05/16 19:32

html中我们从prompt或者文本输入框text输入数字只能得到字符型,我们需要将其转换为数据类型。JavaScript提供了3种方法:1、调用转换函数;2、强制转换;3、变量弱类型转换。

一、 调用转换函数

1、形式

1、字符转整形函数:parseInt(“字符串”);

2、字符转浮点型函数:parseFloat(“字符串”);

2、总结:

1、 这两个函数会将字符串从左往右检查,查找到以一个非数据字符 就会停止并返回一个对应类型的数据,如 果第一个就是非数据字符就会 返回一个NaN(Not a Num)。

2、 parseInt(“字符串”);可以控制输入进制数输出十进制数,需要 转换的字符串的有效数制为十进制和十六 进制。或用parseInt(“字符 串”,进制值);输入2、8、10、16进制数,转换为十进制数。

3、 parseFloat(“字符串”);只能十进制

4、 具体实例:字符转整形函数

1、:parseInt(“字符串”)

document.write("33kk转换为整形:"+parseInt("33kk"));//33kk转换为整形:33document.write("33.3kk转换为整形:"+parseInt("33.3kk"));//33.3kk转换为整形:33document.write("kk33转换为整形:"+parseInt("kk33")); //kk33 转换为整形:NaN

2、字符转整形函数:parseInt(“字符串”)-----进制转换

document.write("0x33.3kk转换为整形:"+parseInt("0x33.3kk")); //0x33.3kk转换为整形:51 document.write("033kk转换为整形:"+parseInt("033"));//033转换为整形:33(8进制无效)

3、形式:parseInt(“字符串”,进制值)

document.write("33(8进制)转换为整形:"+parseInt("33",8)); //33(8进制)转换为整形:27document.write("33(16进制)转换为整形:"+parseInt("33",16))// 33(16进制)转换为整形:51document.write("11(2进制)转换为整形:"+parseInt("11",2)) //11(2进制)转换为整形:3字符转浮点形函数document.write("33.3kk转换为整形:"+parseInt("33.3kk")); //33.3kk转换为整形:33document.write("kk33.3转换为整形:"+parseInt("kk33.3")); // kk33.3转换为整形:NaN

二、 强制转换

JavaScript提供了Number(“字符串”);可以将整形或浮点型的字符串转换为对应的类型,但是他将一整个字符串一起转换。

具体实例:

document.write("33转换为数据类型:"+Number("33")); //33转换为数据类型:33

document.write("33.3转换为数据类型:"+Number("33.3")); //33.3转换为数据类型:33.3

document.write("33.3k转换为数据类型:"+Number("33.3k")); //33.3k转换为数据类型:NaN

三、 变量弱类型转换-----将数据类型的字符串直接参与运算

实例:

var str="99.1";

var result=str-0.1;

document.write("str类型为"+typeof(str)+"<br/><br/>");

document.write("result类型为"+typeof(result)+"<br/><br/>");

结果为:str类型为string

result类型为number

0 0