深度了解JavaScript的null,undefined, "","0","1",0,1,false,true的操作

<script>
document.write("以下操作均为:array[row][0] <span style='color:green;font-weight: bold;background:#b8860b'>操作符</span> array[0][col]的结果,至于array[0][col] <span style='color:green;font-weight: bold;background:#b8860b'>操作符</span> array[row][0]的结果,大家可参考琢磨。<br>现声明变量:<br>var nullObj, obj = {}, array=[null,undefined,\"\",\"0\",\"1\",0,1,false,true,nullObj,obj];");  
var nullObj, obj = {}, array=[null,undefined,"","0","1",0,1,false,true,nullObj,obj];
document.write("<br>1. 对以下的值两两求[等于]和[恒等于]操作结果");  
document.write("<table border=1 cellspacing=0 cellpadding=0>");  
document.write("<tr><td align='center'><span style='color:green;font-weight: bold;background:#b8860b'>==</span><br><span style='color:green;font-weight: bold;background:#8b0000'>===</span></td>");  
for(var i = 0; i < array.length; i++){  
    document.write("<td align='center' nowrap style='background: #E6CAFF;'>"+(i==2||i==3||i==4?("\""+array[i]+"\""):(i==9?"nullObj":(i===10?"obj":array[i])))+"</td>");  
}  
document.write("</tr>");  
for(var i = 0; i < array.length; i++){  
    document.write("<tr>");  
    document.write("<td align='center' nowrap style='background: #E6CAFF;'>"+(i==2||i==3||i==4?("\""+array[i]+"\""):(i==9?"nullObj":(i===10?"obj":array[i])))+"</td>");  
    for(var j = 0; j < array.length; j++){  
        var b1=(array[i]==array[j]),b2=(array[i]===array[j]);  
        document.write("<td align='center'>");  
        document.write("<span style='color:"+(b1?'green;font-weight: bold;background:#b8860b':'')+";'>"+b1+"</span><br><span style='color:"+(b2?'green;font-weight: bold;background:#8b0000':'')+";'>"+b2+"</span>");  
        document.write("</td>");  
    }  
    document.write("</tr>");  
}  
document.write("<tr><td colspan="+(array.length+1)+" align=center>求[逻辑非]操作结果</td></tr>");  
document.write("<tr><td align='center'>!</td>");  
for(var i = 0; i < array.length; i++){  
    document.write("<td align='center' nowrap>"+(!array[i])+"</td>");  
}  
document.write("</tr></table>");  
document.write("<br>2. 对以下的值两两求[或、与]即[||、&&]操作结果(注意:javascript的逻辑操作的返回结果不是true和false,而是一个对象)");  
document.write("<table border=1 cellspacing=0 cellpadding=0>");  
document.write("<tr><td align='center'><span style='color:green;font-weight: bold;background:#b8860b'>||</span><br><span style='color:green;font-weight: bold;background:#8b0000'>&&</span></td>");  
for(var i = 0; i < array.length; i++){  
    document.write("<td align='center' nowrap style='background: #E6CAFF;'>"+(i==2||i==3||i==4?("\""+array[i]+"\""):(i==9?"nullObj":(i===10?"obj":array[i])))+"</td>");  
}  
document.write("</tr>");  
for(var i = 0; i < array.length; i++){  
    document.write("<tr>");  
    document.write("<td align='center' nowrap style='background: #E6CAFF;'>"+(i==2||i==3||i==4?("\""+array[i]+"\""):(i==9?"nullObj":(i===10?"obj":array[i])))+"</td>");  
    for(var j = 0; j < array.length; j++){  
        var b3=(array[i]||array[j]),b4=(array[i]&&array[j]);  
        b3 = ((b3===array[2]||b3===array[3]||b3===array[4])?("\""+b3+"\""):(b3===array[9]&&j!=1?"nullObj":(b3===array[10]?"obj":b3)))  
        b4 = ((b4===array[2]||b4===array[3]||b4===array[4])?("\""+b4+"\""):(b4===array[9]&&i!=1?"nullObj":(b4===array[10]?"obj":b4)))  
        document.write("<td align='center'>");  
        document.write(b3+"<br>"+b4);  
        document.write("</td>");  
    }  
    document.write("</tr>");  
}  
document.write("</table>");  
document.write("<br>(false||nullObj)="+(false||nullObj)+"------(nullObj||false)="+(nullObj||false));  
document.write("<br>(false&&nullObj)="+(false&&nullObj)+"------(nullObj&&false)="+(nullObj&&false)+"//注意两个值的位置,位置不一样,返回值不同,但在if判断中,无论是[null,undefined,\"\",0,false],都不会执行if内的语句");  
document.write("<br>由上表可见:声明一个变量:<br>var obj; //当obj的值为:[null,undefined,\"\",0,false]或未赋值时<br>if(obj){alert('这里是永远不会执行的!');}"); 
</script>

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值