[javascript权威指南笔记02]Throw语句和异常处理机制try/catch/finally
2013-04-23 13:31
344 查看
throw expression ,expression可以是任意类型 数字或错误信息的字符串等...
function factoria(x){
//如果输入的参数非法 则抛出一个异常
if(x<0) throw new Error("x不能是负数"); //这里没有catch子句,将沿着词法结构向上查找 异常处理程序
//参数合法 则计算出一个值并返回这个值
for(var f=1;x>1;f*=x,x--) /*empty*/ ;
return f;
}
当抛出异常时,js解释器会立即停止当前正在执行的的逻辑,并跳转到最近的异常处理程序
try/catch/finally异常处理机制,try从句包含可能会发生异常的代码块,catch从句紧跟在try语句后,当try发生异常时,执行catch内的代码逻辑,不管try语句是否发生异常,finally内的代码总是会执行。
catch/finally两个从句是可选的。
try从句中的异常要么是用throw语句显示抛出的,要么是调用方法时间接抛出的
如:
try{
}
catch(e){ //e 局部变量 用来获得对Error对象或者其他抛出值的引用
}
finally{
}
function factoria(x){
//如果输入的参数非法 则抛出一个异常
if(x<0) throw new Error("x不能是负数"); //这里没有catch子句,将沿着词法结构向上查找 异常处理程序
//参数合法 则计算出一个值并返回这个值
for(var f=1;x>1;f*=x,x--) /*empty*/ ;
return f;
}
当抛出异常时,js解释器会立即停止当前正在执行的的逻辑,并跳转到最近的异常处理程序
try/catch/finally异常处理机制,try从句包含可能会发生异常的代码块,catch从句紧跟在try语句后,当try发生异常时,执行catch内的代码逻辑,不管try语句是否发生异常,finally内的代码总是会执行。
catch/finally两个从句是可选的。
try从句中的异常要么是用throw语句显示抛出的,要么是调用方法时间接抛出的
如:
try{
}
catch(e){ //e 局部变量 用来获得对Error对象或者其他抛出值的引用
}
finally{
}
相关文章推荐
- JAVA学习笔记25——异常机制1:Exception简介+异常处理的try_catch_finally方法
- java个人学习笔记14(Error+Exception+try_catch_finally+throw+throws)
- Java学习笔记__异常机制_try_catch_finally_return执行顺序
- 转载:Java的异常处理机制:try、catch、finally、throw、throws
- JAVA异常处理机制的个人理解(try catch throw finally)
- java的异常处理机制(try…catch…finally)
- C# 中异常抛出捕获机制--throw / try,catch,finally
- java的异常处理机制(try…catch…finally)
- java的异常处理机制(try…catch…finally)
- java的异常处理机制(try....catch...finally)
- java的异常处理机制(try…catch…finally)
- java的异常处理机制(try catch finally)
- 异常机制 :try、catch、 finally 、throw 、throws
- 0016 Java学习笔记-异常-如果try-catch-finally中都存在return语句会怎样?
- java的异常处理机制(try…catch…finally)
- java的异常处理机制(try…catch…finally)
- 对throw语句,try/catch/finally语句加深理解:
- Java异常机制try、catch、finally、throw、throws五个关键字。
- Java学习笔记62. 异常处理语句 try...catch...finally
- 异常概念和处理机制,try-catch-finally,throw和throws,自定义异常