您的位置:88bifa必发唯一官网 > 必发88首页 > 运行结果为 true

运行结果为 true

发布时间:2019-05-22 01:23编辑:必发88首页浏览(154)

    javascript中if条件何时为true呢? 除了有一些能直接比较出结果的表达式之外,对于直接将变量放入if 括号中,何时为true,何时为false呢。下面看具体例子。

    var a;
    
     if(a)
    
     {
      alert("true");
      }
    
    else
    
     {
       alert("false");
       }
    

    运行结果为 false

    var a=1;
    
     if(a)
    
     {
      alert("true");
      }
    
    else
    
     {
       alert("false");
       }
    

    运行结果为 true

    var a=0;
    
     if(a)
    
     {
      alert("true");
      }
    
    else
    
     {
       alert("false");
       }
    

    运行结果为 false

    var a=true;//或者a="true"
    
     if(a)
    
     {
      alert("true");
      }
    
    else
    
     {
       alert("false");
       }
    

    运行结果为 true

    var a=false;//或者a="false"
    
     if(a)
    
     {
      alert("true");
      }
    
    else
    
     {
       alert("false");
       }
    

    运行结果为 false

    此处的大小写是不区分的。

    var a="";
     if(a)
    
     {
      alert("true");
      }
    
    else
    
     {
       alert("false");
       }
    

    运行结果为 false

    var a="1212";//非空字符串,并且不为"false"
    // 注意包含空格的字符串也是非空的 ("   ")
     if(a)
    
     {
      alert("true");
      }
    
    else
    
     {
       alert("false");
       }
    

    运行结果为 true

    其本质就是js中强制类型转换的结果,也就是其他非bool类型转换成bool类型,js处理如下:

    对于var a;

    1. 如果a未赋值,则为null,会被强制转换为false;

    2, 如果a为数值类型的话, 0 或0.000 为false,其他非0值为true;

    1. 如果a为字符串的话, “” 和“false” 会被转换成false, 注意“false” 是不区分大小写的,就是说“False”,"FAlse"等都会被转换成false。

        其他字符串被转换成true 包括含有空格的空字符串(“     ”)。

    4.如果a是其他类型:数组,function,对象,则会被转换成true;

    有一种a为function需要说明,看下面例子:

    var a=function(){};
    
      if( a())
      {
      alert("true");
      }
       else
       {
       alert("false");
       }
    

    结果为false.

    原因是没有返回结果的函数值的返回结果是 undefined。而undefined 会被当做false 处理。

    注意: if(a) 和if(a()) 是完全不同的。if(a)是会一直返回true的,因为他是将函数强制转换。但是if((a))是将函数的返回结果强制转换。

    版权声明:本文为博主原创文章,未经博主允许不得转载。


    本文由88bifa必发唯一官网发布于必发88首页,转载请注明出处:运行结果为 true

    关键词: 必发88首页

上一篇:ST十 Bootstrap Loader

下一篇:没有了