实际开发中经常会使用到JS和PHP中的变量转布尔值进行条件判断,下面对两种语言中转布尔类型结果为false的值进行对比,加深记忆和方便引用。
除了下表列出项,其它的值均转成真值true 。
转布尔值后为false
JS | PHP |
---|---|
布尔值 false 本身 | 布尔值 false 本身 |
特殊类型 null | 特殊类型 null (包括尚未赋值的变量) |
空字符串 “” | 空字符串 “” |
数值 0 (零) | 整型值 0(零) |
undefined | 浮点型值 0.0(零) |
NaN | 字符串 “0” |
不包括任何元素的数组 | |
从空标记生成的 SimpleXML 对象 | |
不包括任何成员变量的对象(仅 PHP 4.0 适用) |
JS中的"0"比较需要注意:
>>> "0" == false //当操作双方