JavaScript错误throw、try、catch

try:语句测试代码的错误;

catch:语句处理错误;

throw:语句创建自定义错误;

finally:语句在try和catch语句之后,无论是否有触发异常,该语句都会执行。

JavaScript错误

当JavaScript引擎执行JavaScript代码时,会发生各种错误。

可能是语法错误,通常是程序员造成的编码错误和错别字。

可能是拼写错误或语言缺少的功能(浏览器差异)。

可能是服务器或用户错误输出导致的错误。

JavaScript抛出错误

当错误发生时,JavaScript引擎通常会停止,并生成一个错误信息。

描述这种情况的术语是JavaScript将抛出一个错误。

JavaScript try和catch

try语句允许我们定义在执行时进行错误测试的代码。

catch语句允许我们在try语句发生错误时,所执行的代码块。

JavaScript中的try和catch语句时成对存在的。

语法:

1 try{
2 ... //抛出异常
3 }catch(e){
4 ... //异常的捕获与处理
5 }finally{
6 ... //结束处理
7 }

实例:

我们在try代码块中写错了一个字符,catch块会捕捉try代码块中的错误,并处理它。

 1 <!DOCTYPE html>
2 <html>
3 <head>
4 <meta charset="utf-8">
5 <title>JavaScript 错误 throw、try和catch</title>
6 </head>
7 <p>
8 try语句测试代码的错误<br>
9 catch语句处理错误<br>
10 </p>
11 <p>
12 语法:
13 try{
14 ... //抛出异常
15 }catch(e){
16 ... //异常的捕获与处理
17 }finally{
18 ... //结束处理
19 }
20
21 </p>
22 <script>
23 var txt="";
24 function message(){
25 try{
26 addlert("Welcome...")
27 }
28 catch(err){
29 txt="本页有一个错误..."+"\n\n";
30 txt+="错误描述"+err.message+"\n\n";
31 txt+="点击确定继续"+"\n\n";
32 alert(txt);
33 }
34
35 }
36 </script>
37 <body>
38 <input type="button" value="查看消息" onclick="message()">
39 </body>
40 </html>

finally语句

finally语句不管之前try和catch语句是否异常都会执行

 1 <!DOCTYPE html>
2 <html>
3 <head>
4 <meta charset="utf-8">
5 <title>javascript finally 语句</title>
6 </head>
7 <body>
8 <p>不管输入是否正确,输入框都会在输入后清空。</p>
9 <p>请输入5~10之间的数字。</p>
10 <input type="text" id="demo">
11 <button type="button" onclick="myFunction()">点我</button>
12 <p id="p01"></p>
13 <script>
14 function myFunction(){
15 // 创建两个变量
16 var x, message
17 // message 从p01获取
18 message = document.getElementById("p01");
19 message.innerHTML="";
20 x = document.getElementById("demo").value;
21 try{
22 if(x=="") throw "值是空的。。。"
23 if(isNaN(x)) throw "不是一个数字。"
24 if(x<5) throw "值太小。。。"
25 if(x>10) throw "值太大。。。"
26 }
27 catch(err){
28 message.innerHTML="错误:"+err;
29 }
30 finally{
31 document.getElementById("demo").value
32 }
33 }
34 </script>
35 </body>
36 </html>

throw语句

throw语句允许我们创建自定义错误

JavaScript 错误 throw、try、catch的更多相关文章

  1. JavaScript 错误 - Throw、Try 和 Catch

    http://www.w3school.com.cn/js/js_errors.asp try 语句测试代码块的错误.catch 语句处理错误.throw 语句创建自定义错误. 错误一定会发生 当 J ...

  2. JavaScript错误-throw、try和catch

    try 语句测试代码块的错误. catch 语句处理错误. throw 语句创建自定义错误. finally 语句在 try 和 catch 语句之后,无论是否有触发异常,该语句都会执行. JavaS ...

  3. 【转】Javascript错误处理——try…catch

    无论我们编程多么精通,脚本错误怎是难免.可能是我们的错误造成,或异常输入,错误的服务器端响应以及无数个其他原因. 通常,当发送错误时脚本会立刻停止,打印至控制台. 但try...catch语法结构可以 ...

  4. JavaScript错误处理

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

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

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

  6. JavaScript 错误处理, Throw、Try 和 Catch入门

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

  7. 001_JavaScript 错误 - Throw、Try 和 Catch

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

  8. JavaScript之Throw、Try 、Catch讲解

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

  9. [转贴]从零开始学C++之异常(一):C语言错误处理方法、C++异常处理方法(throw, try, catch)简介

    一.C语言错误处理方法 1.返回值(if … else语句判断错误) 2.errno(linux 系统调用) 3.goto语句(函数内局部跳转) 4.setjmp.longjmp(Do not use ...

  10. 从零开始学C++之异常(一):C语言错误处理方法、C++异常处理方法(throw, try, catch)简介

    一.C语言错误处理方法 1.返回值(if … else语句判断错误) 2.errno(linux 系统调用) 3.goto语句(函数内局部跳转) 4.setjmp.longjmp(Do not use ...

随机推荐

  1. react 05 router

    安装 npm i react-router-dom -- save<Router basename="/admin"> <Route path="/&q ...

  2. vue-element-admin框架连接yapi配置vue.config.js

    devServer: { host:'localhost', port:port, proxy:{ [process.env.VUE_APP_BASE_API + '/admin']: { //配置p ...

  3. vue中vue2-google-maps使用谷歌地图的基础操作

    小哥我最近使用谷歌地图做了一个项目,于是乎各种坑就扑面而来,未免下次接着踩坑特留下自己的爬坑记录. 首先我是没用过谷歌地图也不知道靠谱不靠谱,于是乎傻傻的入坑了, 1.首先你要是没有vpn(或者fq工 ...

  4. Fiddler自动响应

    自动响应 自带了几个自动响应的规则: regex:(?inx).+.jpg$ # 以jpg结尾 这里写的是正则表达式,所以如果要拦截其他格式只需要改请求文件的后缀名即可. regex:(?inx).+ ...

  5. 复习第6点-6.SpringMVC作用域传值

    作用域范围 对象名称 作用范围 application 整个作用范围 session 在当前会话中有效 request 在当前请求中有效 page 在当前页面有效 request/session/ap ...

  6. Vuforial 使用小计

    1. 在使用扫图功能的时候, 上传图片审核处,要根据图片真实的宽度尺寸设置宽度. 2.做物体识别时,识别的物体最好是一个长方体或正方体,这样识别度高一些. 3.如果是其它物体识别要保证物体大一些,身体 ...

  7. Unity模型剖切

    效果展示 1.首先先下载一个模型剖切插件Cross-Section插件 没有的下方链接自取 插件下载链接 2.下载之后导入到项目  导入之后的样子如下图 因项目需求需要剖切模型,要使用滑动条进行剖切, ...

  8. uwsgi部署flask,flask_apscheduler任务遇到各种问题解决

    背景:最近在做的全域事件项目,快要靠近尾声了,需要用到uwsgi部署至生产环境,由于之前是debug模式,运行项目也是通过命令 python manager.py runserver (manage是 ...

  9. 阻止google浏览器自动更新

    修改 "C:\Windows\System32\drivers\etc\host 文件,在最后增加 127.0.0.1 update.googleapis.com 保存后 win+r 快捷键 ...

  10. JavaScript 数字与字符串的加减乘除运算

    点击跳转 Tips: 除开字符串 + 数字的运算,会产生级联,其他情况下会将 String 转为 number 再进行数字运算. js 运算是从左到右的,所以一步一步来,不要跳步进行运算.