错误处理

错误处理

错误处理

功能

错误处理用于在脚本中主动抛出错误,并在外层捕获后继续执行。throw 会立即中断当前执行流,直到被最近的 catch 捕获;如果没有任何 catch,程序会以未捕获异常终止。

语法

参数

  • try:包裹需要捕获错误的代码块。
  • catch e:捕获 try 中抛出的错误,e 是接收错误信息的变量名。
  • throw value:抛出任意表达式的值,常见用法是抛出字符串错误信息。

返回值

try/catch 也可以作为表达式使用。没有抛错时返回 try 代码块最后一条语句的值;捕获错误时返回 catch 代码块最后一条语句的值。

代码示例

注意事项

  • throw 后面的同级代码不会继续执行。
  • throw 可以穿过函数调用向外传播,直到被外层 catch 捕获。
  • catch 变量按普通可变变量处理;当前 BT 没有块级作用域,因此不要在同一作用域中复用容易混淆的变量名。
  • 未捕获的 throw 会终止程序,并显示未捕获异常信息。