错误
# 错误
当 JavaScript
引擎执行 JavaScript
代码时,会发生各种错误:可能是语法错误,通常是程序员造成的编码错误或错别字。也可能是拼写错误或语言中缺少的功能(可能由于浏览器差异)。还可能是由于来自服务器或用户的错误输出而导致的错误。
当然,也可能是由于许多其他不可预知的因素。
总之,错误是不可避免的,我们需要考虑一种能够抛出错误的手段,就像电脑坏了会显示蓝屏的错误信息,计算器除以零的时候会报错一样。
我们用throw
抛出错误信息,看下面的这个例子:
function divide(arg1, arg2) {
if (arg2 == 0) {
throw "divided by zero is not allowed";
} else {
return arg1 / arg2;
}
}
1
2
3
4
5
6
7
2
3
4
5
6
7
throw
会抛出错误信息,并且立即退出函数。
我们知道了错误信息,还需要把它显示出来。我们使用try-catch
语句来处理捕捉到的错误,如下:
var r;
try {
r = divide(50, 0);
} catch (err) {
alert(err);
}
if (r != null) alert(r);
1
2
3
4
5
6
7
2
3
4
5
6
7
这里使用try-catch
捕捉到了错误信息,并且放在了err
里面,然后由alert
输出了错误信息。
另外,try-catch
的使用,永远应该放在你的控制范围之内,而不应该防范未知的错误。也就是说你很清楚知道这里是有可能出错的,而且你很清楚知道什么前提下会出错,你就是要故意利用报错信息来区分错误,后续的程序会解决所有的出错,让程序继续执行。
简而言之,这个东西是用来区分错误的类型并且处理它的,其他情况下,有些不是很需要用这个语句。
上次更新: 10/9/2022, 7:35:50 PM