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. windows10简单试用(多图,连薛定谔的猫都杀死了)

    为了大家看起来方便,我的截图都是gif的,比较小,但是颜色会有色差,相信大家不介意的 昨天windows10可以下载第一时间就下了玩玩 由于是技术预览,所以不打算替换之前的系统,只装在虚拟机里玩玩就好 ...

  2. JavaScript之web通信

    web通信,一个特别大的topic,涉及面也是很广的.因最近学习了 javascript 中一些 web 通信知识,在这里总结下.文中应该会有理解错误或者表述不清晰的地方,还望斧正! 一.前言 1. ...

  3. Rxjava Subjects

    上次提到调用observable的publish和connect方法后可以将一个Observable发出的对象实时传递到订阅在上的subscriber. 这个和Rxjava中Subject的概念十分相 ...

  4. Vue2.0用components替换render报错

    怀疑是webpack配置的问题,改了一下午也没弄好.去群里问了一轮,也没个解决的. 在研究的过程中,发现了一篇好的讨论帖,看这个帖子能学到不少东西.暂时放弃这个问题的研究了,太费时间,要深入学习编译原 ...

  5. 简化SSH框架的整合

    一.开发环境: (1)    OS:Windows 7 (2)    DB:MySql 5.1.6 (3)    JDK:1.8.0_17 (4)    Server:Apache Tomcat 8. ...

  6. 编程之美—烙饼排序问题(JAVA)

    一.问题描述 星期五的晚上,一帮同事在希格玛大厦附近的"硬盘酒吧"多喝了几杯.程序员多喝了几杯之后谈什么呢?自然是算法问题.有个同事说:"我以前在餐      馆打工,顾 ...

  7. JavaScript权威设计--JavaScript语言核心(简要学习笔记一)

    1.对象名/值得映射 var book={ top:"a", fat:true }   2.访问对象属性 book.top book["fat"] 3.通过赋值 ...

  8. ASP.NET MVC5+EF6+EasyUI 后台管理系统(57)-插件---ueditor使用

    系列目录 目录: 前言 开发环境 知识点 初始使用 自定义工具栏 设置和读取编辑器内容 文件上传 ueditor加水印 ---------------------------------------- ...

  9. 3. 解析 struts.xml 文件

    1. struts.xml 文件基本配置: 主要放在资源路径下,配置 sturts2相关的 Action , 拦截器等配置 <struts> <!-- 设置常量 --> < ...

  10. Restful Api 最佳实践

    Web APIs has become an very important topic in the last year. We at M-Way Solutions are working ever ...