2016-02-12 55 views
-1

是否有可能在全局(窗口)範圍內捕獲未定義的引用是瀏覽器並且需要函數而不是拋出錯誤,並且沒有在try-catch中包含所有函數?是否有可能在窗口屬性上捕獲未定義的引用?

例子。我有功能

$('#id').on('click', function(){ 
    a(); 
}) 

如果沒有定義a功能,我只是得到一個錯誤Uncaught ReferenceError: a is not defined

我想要什麼 - 是定義一些全局的功能,將捕捉所有這些錯誤,並要求所需文件(基於在地圖上)而不是拋出錯誤。

我知道它可能在nodejs中捕獲任何錯誤,但它可能在瀏覽器中?

+1

「*需要基於錯誤需要的文件*」 - 這是錯誤的方法。您應該明確聲明您的依賴關係,而不是在失敗後嘗試加載它們。無論如何,哪一個是不會起作用的,因爲既不加載同步也不能處理器能夠從錯誤中恢復。你也可以使用[Vigil](https://github.com/munificent/vigil)。 – Bergi

+0

您可能正在尋找'window.onerror',查看可能的重複[Javascript全局錯誤處理](http://stackoverflow.com/q/951791/1048572) – Bergi

回答

0

這是不夠的,如果在調用它之前就存在於簡單的檢查?

a && a(); 
相關問題