2016-02-12 56 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(); 
相关问题