JavaScript try…catch
try ... catch是各种编程语言中常用的语句。基本上,它用于处理代码中容易出错的部分。它首先测试代码中可能包含的所有可能的错误,然后实施操作以解决这些错误(如果发生)。一种好的编程方法是将复杂的代码保留在try ... catch语句中。
让我们分别讨论每个语句块:
try {}语句:在这里,需要进行错误测试的代码保存在try块中。如果发生任何错误,它将传递到catch {}块以采取适当的措施并处理错误。否则,它将执行编写在其中的代码。
catch {}语句:此块通过执行写在该块中的语句集来处理代码错误。该块包含用户定义的异常处理程序或内置处理程序。仅当需要在try块中处理任何容易出错的代码时,此块才执行。否则,将跳过catch块。
注意: catch {}语句仅在try {}语句执行后执行。另外,一个try块可以包含一个或多个catch块。
语法:
try{
expression;
}
catch(error){
expression;
}
try…catch示例
<html>
<head> Exception Handling</br></head>
<body>
<script>
try{
var a= ["34","32","5","31","24","44","67"]; //a is an array
document.write(a); // displays elements of a
document.write(b); //b is undefined but still trying to fetch its value. Thus catch block will be invoked
}catch(e){
alert("There is error which shows "+e.message); //Handling error
}
</script>
</body>
</html>
Throw语句
Throw语句用于引发用户定义的错误。用户可以定义并抛出自己的自定义错误。当执行throw语句时,后面的语句将不执行。该控件将直接传递到catch块。
语法:
try…catch…throw语法
try{
throw exception; // user can define their own exception
}
catch(error){
expression; // code for handling exception.
}
该异常可以是字符串,数字,对象或布尔值。
try...catch...throw语句
<html>
<head>Exception Handling</head>
<body>
<script>
try {
throw new Error('This is the throw keyword'); //user-defined throw statement.
}
catch (e) {
document.write(e.message); // This will generate an error message
}
</script>
</body>
</html>
借助throw语句,用户可以创建自己的错误。
try…catch…finally结构
最后是可选的语句块在try和catch语句执行之后执行。最终阻止不保留引发异常。是否抛出任何异常,如果存在,最终将肯定执行块代码。
语法:
try{
expression;
}
catch(error){
expression;
}
finally{
expression;
} //Executable code
try…catch…finally例子
<html>
<head>Exception Handling</head>
<body>
<script>
try{
var a=2;
if(a==2)
document.write("ok");
}
catch(Error){
document.write("Error found"+e.message);
}
finally{
document.write("Value of a is 2 ");
}
</script>
</body>
</html>
因此,我们还可以一起使用try/catch/throw/finally关键字来处理复杂的代码。