JavaScript数据类型的强制转化-数值

来源:互联网 发布:中国2017网络闭关锁国 编辑:程序博客网 时间:2024/06/09 15:39

一、转化为数值类型

A、如果是布尔值,false为0,true为1;

var a=true;

alert(Number (a));//1

B、如果是数字,转化为本身,将无意义的后倒0去掉。

var b=1.0;

alert(Number (b));//1

C、如果Null转化为0

var c=null;

alert(Number (c));//0

D、如果为undefined转化为NaN

var d;

alert(Number (d));//NaN

E、如果是对象,则会先调用对象的valueOf(),若返回为NaN,再调用对象的toString();

F、如果是字符串

1.如果字符串当中只有数字,转换为10进制(忽略前导0和后导0)

var f1='0120.0';

alert(Number (f1));//120

2.如果有效的规范的浮点型,转换为浮点值(忽略前导0和后倒0)

var f2='01.20'

alert(Number (f2));

3.如果是空字符串,则转换为0,

var f3='';

alert(Number (f3));//0

4.如果是其他值,返回NaN

var f4='f4';

alert(Number (f4));//NaN

parseInt(参数1,参数2) 将数字串转换为整型

A、如果一个字符串只包含数字,则以10进制的方式转换为整型。

var num='012010';

alert(parseInt (num));//12010

B、他会自动忽略字符串前面的空格,直到找到第一个非空的数值字符串,直到解析到第一个非数值的字符串结束

var a=" 12df";

alert(parseInt (a))//12

C.如果字符串的第一个字符不是空格、数字、-,那么返回NaN

var str='a12';

alert(parseInt (str));//NaN

D、参数一,必需,要被解析的字符串;参数二,可选,表示要解析的数字的基数。

该值介于 2 ~ 36 之间。如果省略该参数或其值为 0,则数字将以 10 为基础来解析。

如果它以 “0x” 或 “0X” 开头,将以 16 为基数。如果该参数小于 2 或者大于 36,则 parseInt() 将返回 NaN。

举例:parseInt('10');//10

parseInt('10',2);//1*2^1+0*2^0=2

parseInt('23',8);//2*8^1+3*8^0=19

parseInt('28',10);//23

parseInt('3f',16);//3*16^1+15*16^0=63

parseFloat()将字符串转换为浮点型

A、字符串当中只有第一个有效,其他的无效。

var a="1.22.33";

alert(parseFloat (a));//1.22

B、如果字符串时一个有效的整数,他返回的是整数,不会返回浮点数

var a="1.0";

alert(parseFloat (a));//1

阅读全文
0 0
原创粉丝点击