显式数据类型转换
转数字
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