欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JavaScript中的异常处理语句(Try...catch...finally)使用方法介绍

程序员文章站 2022-04-06 16:44:35
...

JavaScript中的异常处理语句(Try...catch...finally)使用方法介绍

 从Javascript3.0中添加了异常处理机制,可以采用从java语言中移植过来的模型使用try--catch--finally语句进行异常的处理。

其中包括(try...catch...finally语句)、Error对象、使用throw语句抛出异常等

使用try...catch...finally语句抛出异常

正确代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>try_catch</title>
	</head>
	<body>
		<script>
			var str = 'i like Javascript'
			try{
				//在页面上输出字符串中的下标为5的字符。
				document.write(str.charAt(5))  //执行成功,在页面输出字符串第5位的内容,然后执行finally中的语句
			}catch(exception){
				//当有错误发生时,弹窗输出下列语句
				alert('运行时有异常发生')
				//TODO handle the exception
			}finally{
				alert('结束try...catch...finally语句')
			}
			
		</script>
	</body>
</html>

抛出异常代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>try_catch</title>
	</head>
	<body>
		<script>
			var str = 'i like Javascript'
			try{
				//在页面上输出字符串中的下标为5的字符。
				document.write(str.charat(5))  //字符串的函数名书写错误,发生异常,执行catch中的语句
			}catch(exception){
				//当有错误发生时,弹窗输出下列语句
				alert('运行时有异常发生')
				//TODO handle the exception
			}finally{
				alert('结束try...catch...finally语句')
			}
			
		</script>
	</body>
</html>

 JavaScript中的异常处理语句(Try...catch...finally)使用方法介绍

分析可知,当try语句块中包含的语句出现错误的时候,跳出try语句执行catch语句块中的内容,然后如果存在finally语句块,则最后执行finally语句块中的内容。

Error对象

try...catch...finally语句中的catch通常捕捉到的对象为Error对象,当运行JavaScript代码时,如果产生了错误或者异常,JavaScript就会生成一个Error对象的实例来描述错误。该实例包含了一些特定的错误信息。

Error对象有以下两个属性。

name:表示异常类型的字符串

message:实际的错误信息

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>try_catch</title>
	</head>
	<body>
		<script>
			var str = 'i like Javascript'
			try{
				//在页面上输出字符串中的下标为5的字符。
				document.write(str.charat(5))  //字符串的函数名书写错误,发生异常,执行catch中的语句
//				document.write(str.charAt(5))  //执行成功,在页面输出字符串第5位的内容,然后执行finally中的语句
			}catch(exception){
				//当有错误发生时,弹窗输出下列语句
				alert('实际的错误信息为:'+exception.message + '\n错误类型为'+exception.name)
				//TODO handle the exception
			}finally{
				alert('结束try...catch...finally语句')
			}
			
		</script>
	</body>
</html>

 JavaScript中的异常处理语句(Try...catch...finally)使用方法介绍

使用throw语句抛出异常

有些JavaScript代码并没有语法上的错误,但是又逻辑错误,对于这种错误,JavaScript不会抛出异常,这时候需要我们自己定义一个Error对象的实例,并使用throw语句来抛出异常。在程序中我们可以通过使用throw语句有目的的抛出异常,其语法格式如下。

throw new Error('somestatements')

参数说明:

throw:抛出异常关键字

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>try_catch</title>
	</head>
	<body>
		<script>
			var str = 'i like Javascript'
			try{
				var num = 1/0;
				if (num == 'Infinity'){
					throw new Error('除数不可以为0')
				}
			}catch(exception){
				//当有错误发生时,弹窗输出下列语句
				alert('实际的错误信息为:'+exception.message + '\n错误类型为'+exception.name)
				//TODO handle the exception
			}finally{
				alert('结束try...catch...finally语句')
			}
			
		</script>
	</body>
</html>

JavaScript中的异常处理语句(Try...catch...finally)使用方法介绍

关于javascript中的异常处理自己记录到此完毕,深入一点的内容后续学习中更新。谢谢!