isNaN()判断非数,非数是转换true, Number返回false,isNaN()先要进行隐式转换在判断
NaN与包括自己在内任何东西都不相等
undefined == null 返回true
Typeof(null)—object
Typeof(a)— undefined
+undefined— NaN
-true— -1
Typeof : number,string,boolean,object,undefined,function
显示转换
Undefined和 null不能用toString
parseInt(string,radix)
toString(radix)
隐式转换
IsNaN()
Number();
Number(null)–> 0
Number(undefined)–> NaN
Number(‘123’)–>123
Number(‘abc’)–>NaN
- a=”a”+1;
有一边为字符串,两边全为字符串 string
Undefined == null true
NaN == NaN false
绝对等于和绝对不等于
1===“1” false
加法运算符+是双目运算符,只要其中一个是String类型,表达式的值就是一个String, 会隐式调用每个元的 .toString() 方法。
对于其他的四则运算,只有其中一个是Number类型,表达式的值便是一个Number。
对于非法字符的情况通常会返回NaN:
‘1’ * ‘a’ // => NaN,这是因为parseInt(a)值为NaN,1 * NaN 还是 NaN