JavaScript Try...Catch 语句

    介绍:JavaScript中的try...carch语句的作用和C#中的try...catch语句的作用一样,

       都是捕获并处理异常。

    语法:

           try

            {
             //在此运行代码
            }
            catch(err)
            {
             //在此处理错误
            }
            

例子:

<html>
<head>
  <script type="text/javascript">
  var txt=""
  function message()
  {
    try
    {
     adddlert("Welcome guest!")
    }
    catch(err)
    {
     txt="There was an error on this page.\n\n"
     txt+="Click OK to continue viewing this page,\n"
     txt+="or Cancel to return to the home page.\n\n"
     if(!confirm(txt))
     {
     document.location.href="http:......."
     }
    }
  }
</script>
</head> <body>
  <input type="button" value="View message" onclick="message()" />
</body> </html>

上面的例子会显示一个确认框,让用户来选择在发生错误时点击确定按钮来继续浏览网页,还是点击取消按钮来访问其他网页。

JavaScript Throw 声明

    介绍:throw 声明的作用是创建 exception(异常或错误)。

       throw 声明的作用是创建 exception(异常)。你可以把这个声明与 try...catch 声明配合使用,以达到控制

       程序流并产生精确错误消息的目的。

    语法:

          throw(exception)

          exception 可以是字符串、整数、逻辑值或者对象。(throw一定要小写)

例子:

<html>
<body>
  <script type="text/javascript">
    var x=prompt("请输入 0 至 10 之间的数:","")
    try
    {
      if(x>10)
      throw "Err1"
      else if(x<0)
       throw "Err2"
      else if(isNaN(x))
       throw "Err3"
    }
    catch(er)
    {
      if(er=="Err1")
       alert("错误!该值太大!")
      if(er == "Err2")
       alert("错误!该值太小!")
      if(er == "Err3")
       alert("错误!该值不是数字!")
    }
  </script>
</body>
</html>

上面的的例子的作用是测定变量 x 的值。如果 x 的值大于 10 或者小于 0或不是数字,错误就会被抛出 (throw)。这个错误被 catch 的参数捕获后,就会显示出自定义的出错信息。

JavaScript onerror 事件

    介绍:使用 onerror 事件是一种老式的标准的在网页中捕获 Javascript 错误的方法。

       chrome、opera、safari 浏览器不支持

       只要页面中出现脚本错误,就会产生 onerror 事件。

       如果需要利用 onerror 事件,就必须创建一个处理错误的函数。你可以把这个函数叫作 onerror 事件处理器 (onerror event handler)。这个事件处理器使用三个参

       数来调用:msg(错误消息)、url(发生错误的页面的 url)、line(发生错误的代码行)。

    语法: 

            onerror=handleErrfunction handleErr(msg,url,l)
           {
             //Handle the error here
             return true or false
           }

例子:

<html>
<head>
  <script type="text/javascript">
    onerror=handleErr
    var txt=""     function handleErr(msg,url,l)
    {
      txt="There was an error on this page.\n\n"
      txt+="Error: " + msg + "\n"
      txt+="URL: " + url + "\n"
      txt+="Line: " + l + "\n\n"
      txt+="Click OK to continue.\n\n"
      alert(txt)
      return true
    }     function message()
    {
      adddlert("Welcome guest!")
    }
  </script>
</head> <body>
  <input type="button" value="View message" onclick="message()" />
</body> </html>

JavaScript错误/异常处理的更多相关文章

  1. javascript错误处理与调试(转)

    JavaScript 在错误处理调试上一直是它的软肋,如果脚本出错,给出的提示经常也让人摸不着头脑. ECMAScript 第 3 版为了解决这个问题引入了 try...catch 和 throw 语 ...

  2. 第一百二十三节,JavaScript错误处理与调试

    JavaScript错误处理与调试 学习要点: 1.浏览器错误报告 2.错误处理 3.错误事件 4.错误处理策略 5.调试技术 6.调试工具 JavaScript在错误处理调试上一直是它的软肋,如果脚 ...

  3. javascript 之异常处理try catch finally--05

    语法结构 try catch finally是ECMAScript-262 第三版提供异常处理机制的标准,语法结构如下: try{ //可能会发生的错误代码 } catch(error){ //错误处 ...

  4. 【转】JavaScript的异常处理

    当 JavaScript 引擎执行 JavaScript 代码时,有可能会发生各种异常,例如是语法异常,语言中缺少的功能,由于来自服务器或用户的异常输出而导致的异常. 而 Javascript 引擎是 ...

  5. Visual Studio 2013中因SignalR的Browser Link引起的Javascript错误一则

    众所周知Visual Studio 2013中有一个由SignalR机制实现的Browser Link功能,意思是开发人员可以同时使用多个浏览器进行调试,当按下IDE中的Browser Link按钮后 ...

  6. 使用 Google Analytics 跟踪 JavaScript 错误

    Google Analytics(谷歌分析)不仅仅是一个流量统计工具,你还可以用它来测量广告活动的有效性,跟踪用户多远到所需的页面流(从点击广告到购物车到结账页面)获取,并基于用户的信息设置浏览器和语 ...

  7. JavaScript错误处理

    JavaScript 错误 - Throw.Try 和 Catch JavaScript 测试和捕捉 try 语句允许我们定义在执行时进行错误测试的代码块. catch 语句允许我们定义当 try 代 ...

  8. 1000多个项目中的十大JavaScript错误以及如何避免

    通过统计数据库中的1000多个项目,我们发现在 JavaScript 中最常出现的错误有10个.下面会向大家介绍这些错误发生的原因以及如何防止. 对于这些错误发生的次数,我们是通过收集的数据统计得出的 ...

  9. JavaScript 错误处理 Throw、Try 和 Catch

    try 语句测试代码块的错误. catch 语句处理错误. throw 语句创建自定义错误. JavaScript 错误 当 JavaScript 引擎执行 JavaScript 代码时,会发生各种错 ...

随机推荐

  1. CSS 实现打字效果

    JS实现 最近做项目的时候需要实现一个字符逐个出现的打字效果,在网上一搜有个不错的jQuery插件Typed.js,效果很赞 <div class="element"> ...

  2. WCF学习之旅—WCF中传统的异常处理(十六)

    WCF中的异常处理 在软件开发过程中,不可能没有异常的出现,所以在开发过程中,对不可预知的异常进行解决时,异常处理显得尤为重要.对于一般的.NET系统来说,我们简单地借助try/catch可以很容易地 ...

  3. Vue.js入门

    之前一直用的是jQuery,jQuery手动操作DOM导致性能不够好,因为DOM修改导致的页面重绘.重新排版!重新排版是用户阻塞的操作,同时,如果频繁重排,CPU使用率也会猛涨! Vue.js是数据驱 ...

  4. ASP.NET OWIN OAuth:refresh token的持久化

    在前一篇博文中,我们初步地了解了refresh token的用途——它是用于刷新access token的一种token,并且用简单的示例代码体验了一下获取refresh token并且用它刷新acc ...

  5. JavaScript资源大全中文版(Awesome最新版)

    Awesome系列的JavaScript资源整理.awesome-javascript是sorrycc发起维护的 JS 资源列表,内容包括:包管理器.加载器.测试框架.运行器.QA.MVC框架和库.模 ...

  6. scikit-learn随机森林调参小结

    在Bagging与随机森林算法原理小结中,我们对随机森林(Random Forest, 以下简称RF)的原理做了总结.本文就从实践的角度对RF做一个总结.重点讲述scikit-learn中RF的调参注 ...

  7. SQLCMD备忘录:执行文件夹所有Sql文件

    在做性能测试的时候最希望的一件事情是数据自动导入. 一般做法就是写很多SQL文件,通过Bat自动执行所有Sql文件. Bat代码: @ECHO OFF SET SQLCMD="C:\Prog ...

  8. RHEL6.4 + Oracle 11g DG测试环境快速搭建参考

    环境现状: 两台虚拟主机A和B: 1. A机器已安装ASM存储的Oracle 11g 实例      参考:http://www.cnblogs.com/jyzhao/p/4332410.html 2 ...

  9. 数据结构笔记--二叉查找树概述以及java代码实现

    一些概念: 二叉查找树的重要性质:对于树中的每一个节点X,它的左子树任一节点的值均小于X,右子树上任意节点的值均大于X. 二叉查找树是java的TreeSet和TreeMap类实现的基础. 由于树的递 ...

  10. 基于WebGL 的3D呈现A* Search Algorithm

    http://www.hightopo.com/demo/astar/astar.html 最近搞个游戏遇到最短路径的常规游戏问题,一时起兴基于HT for Web写了个A*算法的WebGL 3D呈现 ...