我寫一個Node.js應用程式,以及其內部的代碼塊中的一個各種異常可能會拋出(由第三方代碼我叫)。現在我想對這些異常反應,所以我做的:如何檢查JavaScript中的特定異常?
try {
// Call 3rd party code
} catch (e) {
// Handle e
}
基本上,這工作得很好,但是......我怎麼不同的異常之間有什麼不同?
他們都不幸地Error
作爲構造,因此這是沒有可行的方法。我可以使用message
屬性,但當然這不是最好的方式(因爲我依賴於事實的消息永遠不會改變,這就是 - 恕我直言 - 比構造的變化更可能)。
任何想法?
PS:具體 - 我需要在SSL錯誤反應,同時試圖做一個tls.connect
。我如何檢測到這是一個SSL錯誤?
那麼如果只是一個特定的消息區別於其他錯誤,你不能 – Esailija
唯一的方法來檢查是使用字符串比較和/或正則表達式詢問'message'。 – jbabey
不tls.connect發射'錯誤'事件,而不是拋出一個exeption? – soulcheck