三木社区

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 322|回复: 0
打印 上一主题 下一主题

JavaScript 错误 try 和 catch

[复制链接]

942

主题

950

帖子

3062

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3062
跳转到指定楼层
楼主
发表于 2017-9-8 11:00:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 frankxu 于 2017-9-8 11:01 编辑

JavaScript try 和 catch
try 语句允许我们定义在执行时进行错误测试的代码块。
catch 语句允许我们定义当 try 代码块发生错误时,所执行的代码块。
JavaScript 语句 trycatch 是成对出现的。
语法
  1. try {
  2.   //在这里运行代码
  3. } catch(err) {
  4.   //在这里处理错误
  5. }
复制代码
实例
在下面的例子中,我们故意在 try 块的代码中写了一个错字。
catch 块会捕捉到 try 块中的错误,并执行代码来处理它。
  1. var txt="";
  2. function message()
  3. {
  4.     try {
  5.         adddlert("Welcome guest!");
  6.     } catch(err) {
  7.         txt="本页有一个错误。\n\n";
  8.         txt+="错误描述:" + err.message + "\n\n";
  9.         txt+="点击确定继续。\n\n";
  10.         alert(txt);
  11.     }
  12. }
复制代码

Throw 语句
throw 语句允许我们创建自定义错误。
正确的技术术语是:创建或抛出异常(exception)。
如果把 throw 与 try 和 catch 一起使用,那么您能够控制程序流,并生成自定义的错误消息。
语法
  1. throw exception
复制代码
异常可以是 JavaScript 字符串、数字、逻辑值或对象。
实例
本例检测输入变量的值。如果值是错误的,会抛出一个异常(错误)。catch 会捕捉到这个错误,并显示一段自定义的错误消息:
实例
  1. function myFunction() {
  2.     var message, x;
  3.     message = document.getElementById("message");
  4.     message.innerHTML = "";
  5.     x = document.getElementById("demo").value;
  6.     try {
  7.         if(x == "")  throw "值为空";
  8.         if(isNaN(x)) throw "不是数字";
  9.         x = Number(x);
  10.         if(x < 5)    throw "太小";
  11.         if(x > 10)   throw "太大";
  12.     }
  13.     catch(err) {
  14.         message.innerHTML = "错误: " + err;
  15.     }
  16. }
复制代码
请注意,如果 getElementById 函数出错,上面的例子也会抛出一个错误。
回复

使用道具 举报

Archiver|手机版|小黑屋|三木电子社区 ( 辽ICP备11000133号-4 )

辽公网安备 21021702000620号

GMT+8, 2026-1-19 23:56 , Processed in 0.029052 second(s), 22 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表