1、布尔变量true/false,一般通常在程序中推荐这么写,可读性比较好,因为在参差不齐的水平中这是一种标准,易于理解
var flag=true;
if(flag){
alert("被点击成功!");
}else{
alert("点击出错啦!");
}
2、数字非0,非NaN/ (0 或NaN)
var number=0;
if(number){
alert("被点击成功!");
}else{
alert("点击出错啦!");
}
if(NaN){
alert("被点击成功!");
}else{
alert("点击出错啦!");
}
3、对象非null/(null或undefined)
var obj;
if(obj){
alert("被点击成功!");
}else{
alert("点击出错啦!");
}
var number=0;
if(null){
alert("被点击成功!");
}else{
alert("点击出错啦!");
}
4、字符串非空串("ddd")/空串("")
var str="";
if(str){
alert("被点击成功!");
}else{
alert("点击出错啦!");
}
但是在其中的" "这种空格的字符串也是true因为他是将它原态的字符串处理,不像有的情况下将其进行截取以后再操作
我猜想可能转成二进制编码时,只有0和非0两种情况,为0时应该是false,但是不知道是不是回去以后debug一下