【发布时间】:2017-09-24 09:31:53
【问题描述】:
是否可以像在 Java 中一样在 TypeScript 中嵌套/包装异常(原因)?
try {
// do something
} catch (e) {
throw new MyException("Exception while doing something", e);
}
我的意思是,为 MyException 提供一个自定义 ctor,将 e 参数作为 cause 传递可能不是问题,但是稍后报告(打印)堆栈跟踪呢?
【问题讨论】:
-
问题是你不知道
e是什么类型。在 javascript 中,您可以throw任何东西:数字、字符串、错误、数组等。但是您在代码中所做的一切都很好。我为throws clause and typed catch clause 请求了一个功能,这将使它更容易(在我看来) -
谢谢。赞成。如果您可以进行运行时检查,如果
e是一个异常,然后能够提取其堆栈跟踪以供以后报告/打印(a'laprintStackTrace),该怎么办?是否存在这样的模式/代码? -
@KarolDepka
console.log(e instanceof Error, e.stack);
标签: javascript exception typescript error-handling exception-handling