js中true和false判断

布尔类型里只有这6参数个返回false,其它都为true
Boolean(false) // false
Boolean(undefined) // false
Boolean(null) // false 
Boolean(0) // false 
Boolean(NaN) // false 
Boolean('') // false

下面的就是true

Boolean([]) ;    //true
Boolean({}) ;    //true

 

布尔类型与其它任何类型进行比较,布尔类型将会转换为number类型。
Number([])返回0所以第二题为true
Number转换类型的参数如果为对象返回的就是NaN,那么Number({})返回的就是NaN。
通过Object.prototype.toString.call({})来判断类型,0与NaN相比为false
Number()
Number(0)
Number('')
Number('0')
Number(false)
Number(null)
Number([])
Number([0])
//都为0

Number(undefined) //NaN

 

posted @ 2018-05-16 21:16  sunmarvell  阅读(20203)  评论(0编辑  收藏  举报