2012-11-27 58 views
1

這個問題分至2真:如何在沒有try/catch的情況下捕獲錯誤或在運行時用try/catch包裝代碼?

  • 我能趕上與JS異常不使用嘗試捕捉?不必「捕捉」它,繼續執行代碼,但會被通知發生異常。

含義我只是想通知有關異常,無論瀏覽器如何反應後。

  • 我可以在運行時用try/catch包裝代碼嗎?
+0

1.看看控制檯? – bfavaretto

+0

我想用javascript來搭配它 –

+0

爲什麼你需要這樣做?可能有更好的方法來解決你的實際問題。 – hugomg

回答

1

某處在您的JS:

window.someDefinedFunction = function() { 
    //Old risky function 
} 

在別的地方如該函數可以調用:

window.someDefinedFunctionUnsafe = window.someDefinedFunction; 
widnow.someDefinedFunction = function() { 
    try { 
    window.someDefinedFunctionUnsafe(); 
    } 
    catch { 
    //React to error 
    } 
} 

Javascript global error handling是蠻力方式的鏈接。您可能只想在有風險的通話期間交換onerror,具體取決於您要做什麼。

+0

這個+你給我評論的問題的鏈接提供了一個完美的答案,請編輯你的問題與該問題的鏈接。 –

0

您可以在JavaScript中重寫onerror方法。嘗試獲取一些代碼來執行,可能會通知您發生了錯誤,其餘行會繼續執行。

在您的js函數中添加以下行來覆蓋onerror方法。

window.onerror =函數(){
警報( 「你有一個錯誤」);
};

希望它有幫助。

相關問題