`
Neil_yang
  • 浏览: 126295 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

Javascript 异常

阅读更多

try...catch 的作用是测试代码中的错误。

JavaScript - 捕获错误

当我们在网上冲浪时,总会看到带有 runtime 错误的 Javascript 警告框,同时会询问我们“是否进行 debug?”。像这样的错误信息或许对开发人员有用,对用户则未必。当错误发生时,他们往往会选择离开这个站点。

本节向你讲解如何捕获和处理 Javascript 的错误消息,这样就可以为受众提供更多的便利。

有两种在网页中捕获错误的方法:

  • 使用 try...catch 语句。(在 IE5+、Mozilla 1.0、和 Netscape 6 中可用)
  • 使用 onerror 事件。这是用于捕获错误的老式方法。(Netscape 3 以后的版本可用)

Try...Catch 语句

try...catch 可以测试代码中的错误。try 部分包含需要运行的代码,而 catch 部分包含错误发生时运行的代码。

语法:

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

 

注意:try...catch 使用小写字母。大写字母会出错。

实例 1

下面的例子原本用在用户点击按钮时显示 "Welcome guest!" 这个消息。不过 message() 函数中的 alert() 被误写为 adddlert()。这时错误发生了:

<html>
<head>
<script type="text/javascript">
function message()
{
adddlert("Welcome guest!")
}
</script>
</head>

<body>
<input type="button" value="View message" onclick="message()" />
</body>

</html>

 

我们可以添加 try...catch 语句,这样当错误发生时可以采取更适当的措施。

下面的例子用 try...catch 语句重新修改了脚本。由于误写了 alert(),所以错误发生了。不过这一次,catch 部分捕获到了错误,并用一段准备好的代码来处理这个错误。这段代码会显示一个自定义的出错信息来告知用户所发生的事情。

 

<html>
<head>
<script type="text/javascript">
var txt=""
function message()
{
try
  {
  adddlert("Welcome guest!")
  }
catch(err)
  {
  txt="此页面存在一个错误。\n\n"
  txt+="错误描述: " + err.description + "\n\n"
  txt+="点击OK继续。\n\n"
  alert(txt)
  }
}
</script>
</head>

<body>
<input type="button" value="View message" onclick="message()" />
</body>

</html>

 

实例 2

下一个例子会显示一个确认框,让用户来选择在发生错误时点击确定按钮来继续浏览网页,还是点击取消按钮来回到首页。如果 confirm 方法的返回值为 false,代码会把用户重定向到其他的页面。如果 confirm 方法的返回值为 true,那么代码什么也不会做。

<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://www.w3school.com.cn/"
    }
  }
}
</script>
</head>

<body>
<input type="button" value="View message" onclick="message()" />
</body>

</html>

 

onerror 事件

我们马上会讲解 onerror 事件。但首先您需要学习如何使用 throw 语句来创建异常。throw 语句可以与 try...catch 语句一起使用。

</noscript>

 

原文地址:http://www.w3school.com.cn/js/js_try_catch.asp

分享到:
评论

相关推荐

    javaScript异常处理文档

    javaScript异常处理文档,当遇到JavaScript等异常问题时可翻阅本文档寻找答案

    JavaScript异常处理

    JavaScript 异常处理 异常处理概述 在代码的运行过程中,错误是不可避免的,总的来说,错误发生于两种情况:一是程序内部的 逻辑或者语法错误,二是运行环境或者用户输入中不可预知的数据造成的错误。对于前者,就称...

    Apache SkyWalking 客户端 JavaScript 异常和跟踪库

    Apache SkyWalking 客户端 JavaScript 异常和跟踪库。向SkyWalking后端提供指标和错误收集。让浏览器成为整个分布式跟踪的开始。注意,SkyWalking Client JS 0.8.0 及以上版本需要 SkyWalking v9。

    javascript 异常处理使用总结

    JavaScript中的异常可以用try..catch..finally语句来处理,也可以手动的来抛出异常。 1.使用try..catch..finally语句来处理异常 js代码在执行过程中如果出现异常,会手动创建一个异常类对象,该异常类对象将被提交给...

    javascript异常处理实现原理详解

    这篇文章主要介绍了javascript异常处理实现原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一、什么是例外处理 当 JavaScript程序在运行中发生了诸如...

    JavaScript宝典(第7版)

    ● 应用最新的JavaScript异常处理和自定义对象技术 ● 利用DOM的强大功能 ● 使用Ajax、E4X/XML和JSON推动Web 2.0应用 ● 执行数据输入验证和提高安全性 配书光盘 配书光盘的精彩内容如下: ● 29个附赠章节,这些...

    JavaScript 异常处理 详解

    主要介绍了JavaScript 异常处理 详解,需要的朋友可以参考下

    JavaScript宝典(第7版)( (美)Danny Goodman) 高清中文扫描版.pdf

    《javascript宝典(第7版)》内容简介:您想创建更具魅力的交互网页吗?...应用最新的javascript异常处理和自定义对象技术 利用dom的强大功能 使用ajax、e4x/xml利json推动web2.0应用 执行数据输入验证和提高安全性

    skywalking-client-js:Apache SkyWalking APM的客户端JavaScript异常和跟踪库

    客户端JavaScript异常和跟踪库。 向SkyWalking后端提供指标和错误收集。 轻的 使浏览器成为整个分布式跟踪的开始 用法 安装 skywalking-client-js运行时库位于 。 npm install skywalking-client-js --save 快速...

    vue-raven:vue-raven自动报告从vue组件触发的未捕获JavaScript异常

    VueRaven VueRaven自动报告从vue组件触发的未捕获JavaScript异常,并提供用于报告您自己的错误的API。 捕获的错误将报告给哨兵,您可以在其中获得有关应用程序的概述。 如果您还没有,那么创建您的帐户将是使用此...

    rescue:根据类型和属性有条件地捕获JavaScript异常

    根据类型和属性有条件地捕获JavaScript异常。 什么在哪里讨论 文献资料 来源 问题 CI 承保范围: 执照: 麻省理工学院npm install rescue。

    浅谈JavaScript异常处理语句

    运行时的错误统称为异常,为了能在错误发生时得到一个处理的机会,JavaScript提供了异常处理语句。包含try-catch、try-catch-finally和throw. try-catch语句 try{ tryStatements } catch(exception){ ...

    javascript编程异常处理实例小结

    本文实例总结了javascript编程异常处理的方法。分享给大家供大家参考,具体如下: 前言:在前一篇《asp.net开发中常见公共捕获异常方式总结》,我们整理总结了asp.net服务端的异常处理。这一篇接着前文,简单总结并...

    JavaScript 处理异常的方法

    JavaScript 处理异常的方法

    JavaScript代码异常监控实现过程详解

    JavaScript异常一般有两方面:语法错误和运行时错误。两种错误的捕获和处理方式不同,从而影响具体的方案选型。通常来说,处理JS异常的方案有两种:try…catch捕获 和 [removed]捕获。以下就两种方案分别分析各自的...

    深入理解JavaScript系列

    第3部分深入探索JavaScript,介绍了语法、值、运算符、布尔类型、数字、字符串、语句、异常捕获、函数、变量、对象与继承、数组、正则表达式、Date、Math、JSON、标准全局变量、编码和JavaScript、ECMAScript 5的新...

Global site tag (gtag.js) - Google Analytics