1. 永远不会满足条件的 js 判断
关键字: 数字类型判断
var num = 0;
if(num && num == 0){
alert(true);
}else{
alert(false);
}
结果是: false;
为什么呢?
JavaScript 权威指南上说,如果一个布尔值用在数值环境中,true就转换为数字1,而false 就转换为数字0.如果一个布尔值用在一个字符串环境中,true就转换为字符串 "true" ,而 false 就转换为字符串 "false".
相反,如果我们把一个数值类型的0用在布尔环境中,那么0将转换什么呢?
JavaScript 中的布尔类型值的用法跟C中的布尔类型值的用法更相拟,而不是和JAVA相拟。