JavaScript 错误 throw、try、catch
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的更多相关文章
- JavaScript 错误 - Throw、Try 和 Catch
http://www.w3school.com.cn/js/js_errors.asp try 语句测试代码块的错误.catch 语句处理错误.throw 语句创建自定义错误. 错误一定会发生 当 J ...
- JavaScript错误-throw、try和catch
try 语句测试代码块的错误. catch 语句处理错误. throw 语句创建自定义错误. finally 语句在 try 和 catch 语句之后,无论是否有触发异常,该语句都会执行. JavaS ...
- 【转】Javascript错误处理——try…catch
无论我们编程多么精通,脚本错误怎是难免.可能是我们的错误造成,或异常输入,错误的服务器端响应以及无数个其他原因. 通常,当发送错误时脚本会立刻停止,打印至控制台. 但try...catch语法结构可以 ...
- JavaScript错误处理
JavaScript 错误 - Throw.Try 和 Catch JavaScript 测试和捕捉 try 语句允许我们定义在执行时进行错误测试的代码块. catch 语句允许我们定义当 try 代 ...
- JavaScript 错误处理 Throw、Try 和 Catch
try 语句测试代码块的错误. catch 语句处理错误. throw 语句创建自定义错误. JavaScript 错误 当 JavaScript 引擎执行 JavaScript 代码时,会发生各种错 ...
- JavaScript 错误处理, Throw、Try 和 Catch入门
try 语句测试代码块的错误. catch 语句处理错误. throw 语句创建自定义错误. 错误一定会发生 当 JavaScript 引擎执行 JavaScript 代码时,会发生各种错误: 可能是 ...
- 001_JavaScript 错误 - Throw、Try 和 Catch
try 语句测试代码块的错误. catch 语句处理错误. throw 语句创建自定义错误. 错误一定会发生 当 JavaScript 引擎执行 JavaScript 代码时,会发生各种错误: 可能是 ...
- JavaScript之Throw、Try 、Catch讲解
try 语句测试代码块的错误. catch 语句处理错误. throw 语句创建自定义错误. 错误一定会发生 当 JavaScript 引擎执行 JavaScript 代码时,会发生各种错误: 可能是 ...
- [转贴]从零开始学C++之异常(一):C语言错误处理方法、C++异常处理方法(throw, try, catch)简介
一.C语言错误处理方法 1.返回值(if … else语句判断错误) 2.errno(linux 系统调用) 3.goto语句(函数内局部跳转) 4.setjmp.longjmp(Do not use ...
- 从零开始学C++之异常(一):C语言错误处理方法、C++异常处理方法(throw, try, catch)简介
一.C语言错误处理方法 1.返回值(if … else语句判断错误) 2.errno(linux 系统调用) 3.goto语句(函数内局部跳转) 4.setjmp.longjmp(Do not use ...
随机推荐
- 04-python垃圾回收机制
python垃圾回收机制 一.引入 解释器在执行定义变量的语法时,会申请内存空间来存放变量值,每一块内存空间都有其唯一的内存地址,我们在前面说过,变量名并不是存放的变量值,而是存放的内存地址,通过访问 ...
- CSS布局display值inline、block、inline-block区别
inline前后不会有换行,block前后会有换行,inline-block前后不会有换行,但内部会换行且可以设置高宽.,如下图所示:
- Wifi Display
wifi display常用术语 AP:wifi access point Primary Sink: a device that supports rendering video content o ...
- vue父子组件传值的方式
给子组件传值: this.$refs.child.xx(query); 调用父组件的方法:this.$parent.xx();
- unittestreport生成报告介绍
unittestreport主要有以下几个作用 接口用例HTML 测试报告生成. 测试用例失败重运行. 发送测试结果及报告到邮箱. 发送报告到钉钉群. 安装unittestreport: pip3 ...
- 跨平台Docker篇
前言 总结自 老张的哲学b站视频[10分钟学会Blog.Core(ASP.NETCORE)基本完结]https://www.bilibili.com/video/BV1vC4y1p7Za?vd_sou ...
- hyper给linux扩容空间
1.hyper操作 (1)关机后,在设置中,查看硬盘驱动器中的虚拟磁盘及编号, (2)编辑磁盘->查找磁盘中选中刚才的编号磁盘 (3)操作时扩容(大小填的不是增量 ,是扩容以后的空间) 2.li ...
- xrdp 启动分析
前言:xrdp模块说明 参考文档:xrdp-genkeymap man page - xrdp - System Administration (mankier.com) xrdp:远程桌面协议 (R ...
- C/C++ union联合体介绍
C/C++ union联合体介绍 文章参考:https://blog.csdn.net/mooneve/article/details/92703036 目录 C/C++ union联合体介绍 1. ...
- Eureka服务剔除下线
1.参考文档: https://www.centoscn.vip/4317.html 2.剔除服务 格式: curl -X PUT "http://ip:port/eureka/apps/{ ...