JS中 try...catch...finally (转)

Posted JokerJason

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS中 try...catch...finally (转)相关的知识,希望对你有一定的参考价值。

JS的try..catch..finally

var array = null;
try {
    document.write(array[0]);
} catch(err) {
    document.writeln("Error name: " + err.name + "");
    document.writeln("Error message: " + err.message);
}
finally{
    alert("object is null");
}

 

程序执行过程
1. array[0]的时候由于没有创建array数组,array是个空对象,程序中调用array[0]就会产生object is null的异常 
2. catch(err)语句捕获到这个异常通过err.name打印了错误类型,err.message打印了错误的详细信息. 
3. finally类似于java的finally,无论有无异常都会执行.
 
现总结Error.name的六种值对应的信息:
1. EvalError:eval_r()的使用与定义不一致 
2. RangeError:数值越界 
3. ReferenceError:非法或不能识别的引用数值 
4. SyntaxError:发生语法解析错误 
5. TypeError:操作数类型错误 
6. URIError:URI处理函数使用不当

以上是关于JS中 try...catch...finally (转)的主要内容,如果未能解决你的问题,请参考以下文章

你需要知道的,try..catch 不能捕获的那些错误

java中的“try - catch -finally”结构中的“finally”都有哪些用途

try catch finally

try{ } catch{ } finally{ }

java之try catch finally

对try catch finally的理解