显式数据类型转换

转数字

Number()转换:

var a=\'123\';

Number(a)  //123

var b=123;

Number(a)  //123

如果转换的内容本身就是一个数值类型的字符串,那么将来在转换的时候会返回自己

 

var c=\'1q2w\';

Number(c)  //NaN

如果转换的内容本身不是一个数值类型的字符串,那么在转换的时候结果是NaN.

 

var d=\'\';

Number(d)  //0

如果要转换的内容是空的字符串,那以转换的结果是0

 

var e=[123];

Number(e)  //123

 

parseInt() 方法:

var a=\'   123asd\';

parseInt(a)  //123

忽略字符串前面的空格,直至找到第一个非空字符,还会将数字后面的非数字的字符串去掉

 

var b=\'a123 \'

parseInt(b)  //NaN

var b=\'-123\';

parseInt(b)  //-123

如果第一个字符不是数字符号或者负号,返回NaN

 

var c=\'0.123\';

parseInt(c)  //0

var c=\'123.456\';

parseInt(c)  //123

会将小数取整。(向下取整)

 

parseFloat(): 浮点数(小数)

var d=\'123.456\';

parseFloat(d)  //123.456

与parseInt一样,唯一区别是parseFloat可以保留小数

 

转字符串

var a=123;

String(a)  // \'123\'

 

toString()方法来进行转换

var a=123

a.toString()   // \'123\'

var b=[123,\'asd\'];

b.toString()  // \'123,asd\'

undefined,null 不能用 toString() 报错

 

转boolean类型

var a={} 

Boolean(a)  //true

在进行boolean转换的时候所有的内容在转换以后结果都是true,除了:false、\"\"(空字符串)、0、NaN、undefined

 

隐式转换

转number:

var a=\'123\';

a=+a;   //123

a+=a; 同 a=a+a; //246

加减乘除以及最余都可以让字符串隐式转换成number.

 

转string

var a=123;

a=a+\'\'  // \'123\'

a=a+\'123\' //123123

 

转boolean

var a=123;

a=!a;  //false

 

 

 

 

收藏 打印