显示类型转换
- Nmber()调用这个方法会转换成数字类型
Number('123') //123
Number('123a') //NaN
Number('undefined') //NaN
Number(false) // 0
Number(true) //1
Number(null) //0
- parseInt()转换成整数并取整直接舍去小数
parseInt(123.12) //123
parseInt(true) //NaN
parseInt('123a') //123
//如果parseInt(number,n)中有两个参数代表number是以n为进制转换成十进制
parseInt(12,8) //12
3.String ()转换成字符串
String(123) //123
4.toString()
var a
a.toString() //报错
var a = 123'
a.toString() //'123'
var c = null
c.toString() //报错
当toString(N)用参数时表示一个十进制的数转换成n进制的数
var d = 10
d.toString(2) //'1010
隐式类型转换
隐式类型转换都会调用显示类型
- '+"(如果旁边有字符串则调用String)
var a = 1 + 'a' + 1 //1a1
var a = 1 + 1 + 'a' + 1 + 1 //2a11
2.isNaN()=>Numer()
isNaN('NaN') //true
isNaN(null) //Number(null)=>0 false
isNaN(123) //false
3.++/–/+/-(=>number)
var a = '123'
++a //numer 124
var b = 'abc'
++b //NaN
+b //NaN
-b //NaN
4.*/%(=>Number)
var a = '1'*1 //1
var a = 'a' * 1 //NaN
5.< > <= >=(boolean)
NaN = NaN //false
undefined = 0 //false
undefined > 0 //false
undefined < 0 //false
undefined = null //true
6.=== !/!== 不发生类型转换
1 === 1 //true
1 === '1' /false
1 == 1 //true
NaN === NaN //false