在JavaScript中拋出異常時,是否有一種首選的方法來包含內部異常?JavaScript中的內部錯誤(例外)
我對來自C#背景的JavaScript比較陌生。在C#中,你可以做到以下幾點:
try
{
// Do stuff
}
catch (Exception ex)
{
throw new Exception("This is a more detailed message.", ex);
}
在我見過的在JavaScript中我一直沒能找到如何捕捉異常,添加一個新的消息和樣本重新拋出,而新的異常仍然通過最初的例外。
您可以定義在javascript自己的異常:http://stackoverflow.com/a/464500/1291428。然後,這個概念在某種程度上是一個全球性的標準:異常應該適合誰在使用你的api。所以,它意味着必要時捕獲它,添加以下信息,記錄原始異常等。請參閱Joshua Bloch,Effective Java第2版,第61項:拋出與抽象相關的異常 – Sebas 2014-10-29 20:28:01
我明白了。我認爲可能有一種方法通常是爲了方便API的消費者而進行處理。我可能只是將一個名爲innerException的字段添加到自定義異常中。謝謝! – burnttoast11 2014-10-29 20:33:24
拋出顯示堆棧,所以你應該能夠確切地追蹤問題所在。那就是說,堆棧不是一個標準屬性,儘管它有一些稍微不同的格式,被廣泛使用。 – dandavis 2014-10-29 20:48:13