try{ error("错误信息"); //使用error可以抛出一个错误 //如果error函数在try语句中,程序将不会报错,而会直接跳出try语句 } catch(e){ //如果try语句后跟catch语句则可以捕获到这个错误信息e }
以上是try...catch的语法;
try语句尝试执行一个语句块,遇到错误则退出try语句块而不是中断aardio程序。
如果使用了catch语句块就可以捕获异常(catch语句块是可选的)。
以上是在aardio使用手册中的一段话。
也许在使用try catch的过程中我们常常想出现错误的时候直接返回错误。
举个例子:
import console; test = function(){try{ error("1"); } catch(e){ return e; } } console.log(test()); console.pause(true);
我们在test执行的过程中如果出现错误就返回这个错误信息e。
可是,这样写就错了。orzing~
返回了一个null。(也就是test函数根本就没有返回值)
后来经过多次测试发现在try或者catch中使用return仅仅是跳出了try或者catch的花括号;所以函数是没有返回的。
那要想返回catch到的错误信息e,可以使用下面的方法:
import console; test = function(){ var err; try{ error("1"); } catch(e){ err = e; } return err; } console.log(test()); console.pause(true);
在函数体中定义一个局部变量err,可以在catch语句中把错误信息e赋值给err变量;
然后在函数体中返回,这样就可以返回catch到的错误信息了!
时间: 2024-10-18 17:54:25