Javascript:异常和错误策略
问题描述:
有没有人知道处理异常和错误的好策略。目前,我有不同的代码处理自己的验证/错误/异常,但我真的有一个集中的策略。我正在考虑一些全球通知系统,如验证一样将一些错误/例外传递给用户。其他错误我会发布到我的后端并记录下来。Javascript:异常和错误策略
例如,验证错误可能包含导致错误的元素。这样我可以添加一个类来突出显示它,并在之前或之后添加一些文本。
所以如果任何人有关于如何做到这一点的具体事例,我会非常感激。
答
如果它是值得的,你可以自定义错误,并围绕这些功能包含默认行为:
function errorHandler() {
var error = arguments[1] ; //!! pass the error
/* additional arguments */
var errorCode = error.message ;
var errorMap = { //!! a map that matches error codes to default behaviour
"customErrorName":function() {
/* default behaviour for this kind of error */
} ,
/* more custom error codes and default behaviour */
}
if(errorCode in errorMap) { //!! error code has a default behaviour
errorMap[ errorCode ]() ; //!! call default behaviour
} else {
/* log unknown error */
}
}
你会在try { ... } catch(e) { ... }
块实现这一点:
try {
/* your code */
if(someErrorCondition) {
throw new Error("someError") ;
}
} catch(e) {
errorHandler(e) ;
}
JavaScript中也有默认错误类型。在以下链接中有一个列表:https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/Error
答
如果您的主要问题是关于验证,我认为最具体的方法是使用jQuery validation plug-in这是真正可定制的,并且有一个很好的基础让您开始处理异常。
我不是javascript的尝试catch块的粉丝,但我认为你也可以从给自己的特定代码开始到不同的错误,并在switch case块中处理它们。