Boolean布尔数据类型
只有两个字面值;true和false,这两个值与数字值不是一回事,因此true不一定等于1,而false也不一定等于0。
把其他类型转换为布尔类型
只有0、NaN、''、null、undefined五个值转换为false,其余都转换为true(而且没有任何的特殊情况)
数据类型 | 转换为true的值 | 转换为false的值 |
---|---|---|
Boolean | true | false |
String | 任何非空字符串 | ""空字符串 |
Number | 任何非零数字值(包括无穷大) | 0 和 NaN |
Object | 任何对象 | null |
Undefined | 不适用 | undefined |
Boolean(true) // true
Boolean(false) // false
Boolean('Hello Wolrd') // true
Boolean() // false
Boolean('') // false
Boolean(' ') // true (里面有空格)
Boolean(1) // true
Boolean(0) // false
Boolean(NaN) // false
Boolean({}) // true
Boolean([]) // true
Boolean(null) // false
Boolean(undefined) // false
把其他类型转换为布尔类型有三种方式:
Boolean()
!
或!!
取反:先转为布尔,然后取反- 条件判断