if(一个变量),没有> <  !=这些半短逻辑, 什么时候为真 什么时候为假?

解决方案 »

  1.   

    0为true
    1为false
    空值为false
    非空值true
      

  2.   

    我在普科国际学习的时候学到过这个,老师讲的很详细,你是不是在学习java基础的时候遇到的?具体想问什么?
      

  3.   

    仅供参考:    <script type="text/javascript">
            var r = "";
            window.onload = function () {
                var a;
                wLine(((a) ? "true " : "false ") + typeof (a)); //false  a==undefined
                wLine(((a=null) ? "true " : "false ") + typeof (a)); //false  a==null
                wLine(((a = -0) ? "true " : "false ") + typeof (a)); //false  a==0
                wLine(((a = -0.000000000001) ? "true " : "false ") + typeof (a)); //true a!=0
                wLine(((a = "") ? "true " : "false ") + typeof (a)); //false  a==""
                wLine(((a = " ") ? "true " : "false ") + typeof (a)); //true  a==" "  空格
                wLine(((a = function () { return false; }) ? "true " : "false ") + typeof (a)); //true a==function
                wLine(((a =( function () { return false; }))() ? "true " : "false ") + typeof (a)); //false a==function 
            }
            function wLine(val) {
              var f = document.forms[0];
              if(f)f.innerHTML+=val+"<hr/>";
              else alert(val);
            }
        </script>
      

  4.   

    if(a)... 等价于  if(a==true) 的意思。但是前者的范围比较大。
    if(a) 只要a!=0 ; a!=null;a!=undefined;a!=""的情况下基本就成立了。
      

  5.   

    if(一个变量) 这个变量本身的值就是true或者false,当1=1即true 1=2即false
      

  6.   

    相当于if(Boolean(var))js会自动把值转成boolean类型
      

  7.   

    javascript是弱变量类型语言,通俗地就是没有数据类型。任意值都有逻辑值(真或假):
    非真值:null undefined '' 0 false
    真值:任意对象、任意非0数字、任意非空字符串、trueif(a){}表示如果a为真值就执行。