有没有人有任何想法如何对懒加载的JavaScript错误处理?我使用的方法是调用ajax请求,并在全局范围内评估代码。当运行时错误被触发时,它会将文件名作为我的延迟加载脚本进行处理,并且行号是错误行加上我的加载脚本中的eval的行号。除了所有的javascript文件被合并到网站的各个模块之外,这不会那么糟糕。尝试抓住JavaScript文件本身不会捕获函数的运行时错误。有任何想法吗? Window.onerror不提供正确的文件名,所以它是不可能的。我需要在它被击中之前抓住它。延迟加载的JavaScript运行时错误处理?
我在想也许我可以通过编程的方式在eval'd代码中包含所有函数的尝试捕获(这很丑陋),但是由于它是在窗口级别完成的,我不确定如何访问eval'd代码具体和动态。当然,如果javascript是一个名为“Bob”的对象,我可以访问window.Bob,但我需要动态地执行它。
也许我错过了一些东西,但为什么你的JavaScript会抛出运行时错误?即使是这样,在调用函数之前,您不能验证函数参数吗?看起来好像处理运行时错误的最佳方法是不允许它们发生。 – Sparafusile 2010-09-08 18:34:34
这并不是说有运行时错误,而是在出现一个错误时,我想指定出于调试目的而抛出的内容。错误错误地表明加载脚本是问题。我正在计算正确的文件名/行号。 – g3k0 2010-09-08 19:20:27