【问题标题】:Javascript: How to log exception by default way and continue execution?Javascript:如何默认记录异常并继续执行?
【发布时间】:2013-09-01 07:11:22
【问题描述】:

如果 javascript 代码中出现未处理的异常,所有浏览器都会在其日志中创建美丽消息,包括异常类型、消息和堆栈跟踪和/或到源代码行的有用链接。现在我想捕获一个异常,把相同的日志作为未处理的异常,然后继续执行。我试着写类似

try {
...
} catch (e) {
console.log(e);
}

但我在 Chrome 中得到的只是日志中的异常类型名称,没有任何描述和堆栈或源代码行链接。 如何创建与未处理异常相同但捕获的异常并继续执行的漂亮异常日志消息?

【问题讨论】:

标签: javascript exception logging exception-handling


【解决方案1】:

您可以使用Error 对象的stack 属性来获取堆栈跟踪。

如果您不自己抛出异常,您可以将其包装在错误对象中,以至少提供对 catch 块的跟踪。

try{
  throw new Error("Test");

}
catch(e){
  console.log(e.stack);
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-16
    • 2015-03-29
    • 1970-01-01
    • 2021-08-01
    相关资源
    最近更新 更多