显式类型转换
- Number(mix) // Number(undefined)=>NaN Number(null)=>0
- parseInt(string,radix)
- parseFloat(string)
- toString(radix)
- String(mix)
- Boolean()
隐式类型转换
- isNaN() // 自动调用 Number()的结果后再和NaN进行比对,返回布尔值
- ++ / -- + / - (一元正负) // var a = '123'; a ++; 先Number(a);再进行 ++;+a 或者 -a 都会Number(a)进行隐式转换
- + 加号 // var a = 'a' + 1; 当加号两边只要有字符串会进行String()转换; ‘11’+11 =>'1111'
- - * / % // var a = 'a' * 1; Number(a) * Number(1); var a = '1' * '2'; 结果为2
- && || ! // 会进行 Boolean()转换
- <> <= >= // 有数子进行比较的 会进行Number转换 字符串比数子 会Number();两个字符串进行比较会比ASC码
- == != // 1 == '1'; 1 == true; true > false; 2 > 3 < 1 ==> true; undefined == null ==> true; null == null ==> false;
不发生类型转换
- === !== // 全等 不全等 null === null ==> false