• js判断变量是否未定义的代码【转】


    一般如果变量通过var声明,但是并未初始化的时候,变量的值为undefined,而未定义的变量则需要通过 "typeof 变量"的形式来判断,否则会发生错误

    js 代码中经常会碰到 undefined 这种错误,下面本文分享一下为什么会发生这种错误以及如何处理这种错误,js 中如果通过 var 声明了一个变量但是没有初始化该变量的时候,此时该变量的值便为 undefined ,此时判断变量是否定义可使用 typeof 。下面举例说明一下

    if(!result){ 
      alert("发生错误"); 
    } 
    

    以上这段代码直接运行会发生异常,因为变量 result 没有申明就被使用了,下面几种写法都是正确的。

    (1) 
     
    if("undefined" == typeof result){ 
      alert("发生错误"); 
    } 
    (2) 
     
    var result; 
    if(undefined == result){ 
      alert("发生错误"); 
    } 
    (3) 
     
    if("undefined" == typeof result){ 
      alert("发生错误"); 
    } 
    

    补充

    例如:

    if(!myVar01)alert("发生错误");

    // 该代码直接发生异常,因为变量myVar01没有申明 if("undefined" == typeof myVar01)alert("发生错误");

    // 这样写才不至于发生异常

    而: var myVar01; if(undefined == myVar01)alert("发生错误");

    // 该代码会正确运行 if("undefined" == typeof myVar01)alert("发生错误");
    // 该代码同样会正确运行

    结论:我们采用下面的方式来保证万无一失 if("undefined" == typeof myVar01)alert("发生错误");

    // 该代码同样会正确运行

    当然判断数据的有效性远远不只这些,还有对null的判断,数字是否大道越界.

    实例

    <script>
    //最常用
    if("undefined" == typeof('a')){
    //未定义
    }else{
    //定义
    }
    
    if("undefined" == typeof a){
    //未定义
    }else{
    //定义
    }
    
    if(typeof a != "undefined"){
    //true 定义
    }else{
     //false 未定义
    }
    </script>
    

    实际应用:

    downlm有的页面我们不定义,但有的页面定义了,就可以需要这样的判断方法,没有定义的就不执行。

    if("undefined" != typeof downlm){
        if(downlm=="soft"){
            document.write('成功');
        }
    }
    

    来源:https://www.jb51.net/article/31741.htm

  • 相关阅读:
    【抓包】Charles设置断点
    获取绑定到DataGridView中某一行的数据
    持续集成经验分享Bamboo+Ant+SVN的构建方案
    JIRA.HOME locked被锁的解决方案
    JIRA使用说明
    jira 4.2 使用Oracle数据库的详细安装(含破解)
    Linux + JIRA4.2 + MySQL安装&破解&配置攻略
    EXECUTE IMMEDIATE oracle介绍
    园子里的哪位大哥给我说说WinCE程序的开发,谢谢了
    PL/SQL DEVELOPER中的专用复制(Special Copy)
  • 原文地址:https://www.cnblogs.com/KillBugMe/p/13235112.html
Copyright © 2020-2023  润新知