[size=large][color=red]try catch finally 语句说明[/color][/size]
[color=blue]try catch finally[/color]是javascript语言提供的异常处理机制。语法结构如下
try…catch…finally…语法中[color=red]除了try以外catch和finally都是可选的(两者必须要有一个)[/color],也就是说try…catch…finally…语法有以下三种形式
如果有一定catch,一旦try中代码抛出异常以后就是先执行catch中的代码,然后执行finally中的代码。[color=blue]如果没有catch语句,try中的代码抛出异常后,就会先执行finally中的语句,然后将try中抛出的异常以异常的方式继续往上抛。[/color]
[color=red]不管try代码块的执行时如何被终止的(出现异常、return、自然终止)finally中的语句始终会被执行,正是由于finally的这种特性,通常finally用来执行一些清理工作。[/color]如果try中代码是以return,continue,break的方式终止的,Javascript引擎会在执行完finally中的语句以后再执行相应的try中的返回语句。
[color=blue]try catch finally[/color]是javascript语言提供的异常处理机制。语法结构如下
try {
//这段代码从上往下运行,其中任何一个语句抛出异常该代码块就结束运行
}
catch (e) {
//异常类型
error.name;
//异常消息
e.message;
// 如果try代码块中抛出了异常,catch代码块中的代码就会被执行。
//e是一个局部变量,用来指向Error对象或者其他抛出的对象
}
finally {
//无论try中代码是否有异常抛出(甚至是try代码块中有return语句),finally代码块中始终会被执行。
}
try…catch…finally…语法中[color=red]除了try以外catch和finally都是可选的(两者必须要有一个)[/color],也就是说try…catch…finally…语法有以下三种形式
try{
//some code
}
catch(e){
//somecode
}
finally{
//some code
}
try{
//some code
}
catch(e){
//somecode
}
try{
//some code
}
finally{
//some code
}
如果有一定catch,一旦try中代码抛出异常以后就是先执行catch中的代码,然后执行finally中的代码。[color=blue]如果没有catch语句,try中的代码抛出异常后,就会先执行finally中的语句,然后将try中抛出的异常以异常的方式继续往上抛。[/color]
[color=red]不管try代码块的执行时如何被终止的(出现异常、return、自然终止)finally中的语句始终会被执行,正是由于finally的这种特性,通常finally用来执行一些清理工作。[/color]如果try中代码是以return,continue,break的方式终止的,Javascript引擎会在执行完finally中的语句以后再执行相应的try中的返回语句。