我正在使用window.addEventListener('message', fun)
注册一些事件监听器。如果一个事件侦听器引发异常,将会发生什么?其他事件侦听器是否照常运行或受此异常影响?有没有办法在fun
函数之外捕获所有异常?
答案 0 :(得分:2)
在fun
事件侦听器内部,如果您认为可能会引发异常,则应捕获该异常并在函数内部对其进行处理。
function fun(){
try{
//something that may throw an exception
}catch(err){
console.log(err.message);//log the exception message
//handle exception
}
}
如果要捕获所有未处理的抛出异常,则可以使用window.onerror()
。
window.onerror = function(e){
alert(e);
}
undefinedFunction();