undefined 与 null

typeof null  -   'object

typeof undefined   -  'undefined' 

 

Boolean(null)    -  false

Boolean(undefined)  -  false

 

Number(undefined)    -  NaN

Number(null)    -   0

 

123 + null    -  123   (null  - 0)

123 + undefined   -   NaN

 

null == undefined     -  true

'undefined' in window    -  true

 

goole

keys(window).length   372      避免直接与 undefined 作比较(避免性能浪费,应该使用 Boolean 去区分)

 

常识之外

null > 0 // null 尝试转型为number , 则为0 . 所以结果为 false,

null == 0 // null在设计上,在此处不尝试转型. 所以 结果为false.

null <0    false
null >= 0 // null 尝试转为number ,则为0 , 结果为 true.

 

undefined>0   false

undefined==0   false

undefined<0    false

undefined<=0   false

 

posted @ 2018-10-24 17:11  justSmile2  阅读(166)  评论(0编辑  收藏  举报