假设我有一个HTML文件。在该文件中,我引用了两个外部JavaScript文件。其中,一个javascript文件中有错误(主要是编译错误)。我在另一个没有任何错误的javascript文件中写了onerror
方法。现在,当我在浏览器中打开HTML文件时,显然会调用onerror
。将执行该方法中的内容。在这里我的实际想法,我想在另一个javascript文件的alert(-)
方法的onerror
中放置有错误的javascript文件名。
如果我将arguments.callee
语句放在alert(-)
中,那么它会打印当前的onerror
方法内容。如果我输入arguments.callee.caller,那么它将打印为null。
有没有办法通过编程方式找到加载了javascript的文件名,其中有错误,特别是在javascript中?
答案 0 :(得分:0)
这个问题在https://developer.mozilla.org/de/docs/Web/API/GlobalEventHandlers/onerror中得到了很好的回答。特别要看这个:
funcRef是对函数的引用。当函数返回true时, 这可以防止触发默认事件处理程序。功能 参数:
Error message (string) URL of the script where the error was raised (string) Line number where error was raised (number) Column number for the line where the error occurred (number) Error Object (object)
这导致:
window.onerror(msg, URL, line, col, e) {
alert("Error in " + URL + " at " + line + "/" + col);
}
我建议不要使用alert来显示脚本错误,而是使用console
对象。