请问出现异常后怎么返回? 把你必须要执行的代码放在finally { //代码 } 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <SCRIPT LANGUAGE="JavaScript"><!--try{ alert("1"); form1.b="xx"; //这里会出理异常 alert("3");}catch(e){ alert("error");}//继续在这里写代码就可以了//--></SCRIPT> 我知可以继续,但我因为出现异常而接下来的代码未执行我想要跳回去执行像ASP.net中的resume 继续try{}块中的程序?那不行吧只能执行catch后面的的语句 alert("1");try{ form1.b="xx"; //这里会出理异常}catch(e){ alert("error");} alert("3");//可以将它提到外面来 缩小try的范围?try{ form1.b="xx"; //这里会出理异常}catch(e){}//其他语句 同意sunbeamy,可以单句捕捉<SCRIPT LANGUAGE="JavaScript"><!-- alert("1");try{ form1.b="xx"; //这里会出理异常}catch(e){ alert("error");} alert("3");//--></SCRIPT> <SCRIPT LANGUAGE="JavaScript"><!--try{ form1.b="xx"; //这里会出理异常}catch(e){ alert("抛出异常");}finally{ alert("用finally才是正途!\n把必须执行的代码放在finally{}里面");}//--></SCRIPT> 错误机制和java是类似的,贴一段大家看看以为然否当一个异常抛出时,程序的执行不再是线性的,可能跳过某些代码,甚至会由于没有匹配的catch子句而过早地返回。为了确保某一段代码无论发生什么异常都被执行到,需要使用“finally”关键字。finally程序块会在执行try程序块后的代码之前执行。每个try模块都需要至少一个catch和finally子句。一个成员函数返回调用它的函数有两种途径:一个没有被捕捉到的异常;一个return语句,finally子句总是恰好在成员函数返回前处理。程序清单:class FinallyDemo{ static void procA(){ try{ System.out.println("inside procA"); throw new RuntimeException("demo"); } finally{ System.out.println("procA's finally"); } } static void procB(){ try{ System.out.println("inside procB"); return; } finally{ System.out.println("procB's finally"); } } public static void main(String args[]){ try{ procA(); }catch(Exception e); procB(); }}运行结果:c:\>java FinallyDemoinside procAprocA's finallyinside procBprocB's finally 急,请问javascript的this问题? 现在有这么个滑动门搜索……请问我该如何识别呢? 关于表单验证的问题 怎么用javascript提交表单内容,而不转向特定的页面? 急,动态表单问题高手进....... 如何for循环中强制退出呀 如何把字符串转换成数字? 超级大难题,解决了送100分 请高手帮忙修改程序 怎么给一个变量赋值为回车换行? 在java中怎样钓用另一个asp程序? 判断字符的问题,谢谢了~(非常急)
<!--
try{
alert("1");
form1.b="xx"; //这里会出理异常
alert("3");
}
catch(e){
alert("error");
}
//继续在这里写代码就可以了
//-->
</SCRIPT>
我想要跳回去执行像ASP.net中的
resume
try{
form1.b="xx"; //这里会出理异常
}
catch(e){
alert("error");
}
alert("3");//可以将它提到外面来
try{
form1.b="xx"; //这里会出理异常
}
catch(e){}
//其他语句
<SCRIPT LANGUAGE="JavaScript">
<!--
alert("1");
try
{
form1.b="xx"; //这里会出理异常
}
catch(e)
{
alert("error");
}
alert("3");
//-->
</SCRIPT>
<!--
try
{
form1.b="xx"; //这里会出理异常
}
catch(e)
{
alert("抛出异常");
}
finally{
alert("用finally才是正途!\n把必须执行的代码放在finally{}里面");
}
//-->
</SCRIPT>
当一个异常抛出时,程序的执行不再是线性的,可能跳过某些代码,甚至会由于没有匹配的catch子句而过早地返回。为了确保某一段代码无论发生什么异常都被执行到,需要使用“finally”关键字。finally程序块会在执行try程序块后的代码之前执行。每个try模块都需要至少一个catch和finally子句。一个成员函数返回调用它的函数有两种途径:一个没有被捕捉到的异常;一个return语句,finally子句总是恰好在成员函数返回前处理。
程序清单:
class FinallyDemo{
static void procA(){
try{
System.out.println("inside procA");
throw new RuntimeException("demo");
}
finally{
System.out.println("procA's finally");
}
}
static void procB(){
try{
System.out.println("inside procB");
return;
}
finally{
System.out.println("procB's finally");
}
}
public static void main(String args[]){
try{
procA();
}catch(Exception e);
procB();
}
}运行结果:
c:\>java FinallyDemo
inside procA
procA's finally
inside procB
procB's finally