JavaScript中让人蛋疼的Boolean
在javascript中boolean的判断和java中一些表达式还是有一些差别,上一次在调试一个bug的时候真的很蛋疼,上千行的js里一个boolean判断失效。
在javascript中false==’0′ 返回的值为True,0 == ”这个表达式也会为True, 0 == ‘0’ 还是为true。如果不知道这个差异,很容易导致对初始值为0的变量判断失效。因为可能会出现依靠初始值来标记某些元素是否变化。
下面是从网络摘来的Javascript中boolean容易混淆的表达式,供以后参考。
'' == '0' // false
0 == '' // true
0 == '0' // true
false == 'false' // false
false == '0' // true
false == undefined // false
false == null // false
null == undefined // true
true == 1 // true
'' == null // false
false == '' // true