用户工具

站点工具


javascript_catch_error_globally

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
javascript_catch_error_globally [2021/06/11 02:40] – [参考链接] jiajijavascript_catch_error_globally [2024/02/04 04:48] (当前版本) – 外部编辑 127.0.0.1
行 11: 行 11:
 3. 函数体内用return true可以不让异常信息输出到控制台 3. 函数体内用return true可以不让异常信息输出到控制台
  
-```+```javascript
 window.onerror = function (msg, url, lineNo, columnNo, error) { window.onerror = function (msg, url, lineNo, columnNo, error) {
     var string = msg.toLowerCase();     var string = msg.toLowerCase();
行 43: 行 43:
 3. 函数体内用preventDefault可以不让异常信息输出到控制台 3. 函数体内用preventDefault可以不让异常信息输出到控制台
  
-```JavaScript +```javascript 
-                                    window.addEventListener('error', handleListenerError, true); +window.addEventListener('error', handleListenerError, true); 
-                                         function handleListenerError(e) { +function handleListenerError(e) { 
-                                             var srcElement = e.srcElement; +    var srcElement = e.srcElement; 
-                                             if (srcElement === window) { +    if (srcElement === window) { 
-                                                 // 全局错误 +        // 全局错误 
-                                                 console.error(JSON.stringify({ +        console.error(JSON.stringify({ 
-                                                     message: e.message, +            message: e.message, 
-                                                     filename: e.filename, +            filename: e.filename, 
-                                                     lineno: e.lineno, +            lineno: e.lineno, 
-                                                     colno: e.colno, +            colno: e.colno, 
-                                                     stack: e.stack, +            stack: e.stack, 
-                                                     type: 'error', +            type: 'error', 
-                                                     error: "script runtime error" +            error: "script runtime error" 
-                                                 })) +        })) 
-                                             } else { +    } else { 
-                                                 // 元素错误,比如引用资源报错 +        // 元素错误,比如引用资源报错 
-                                                 console.error(JSON.stringify({ +        console.error(JSON.stringify({ 
-                                                     src: srcElement.src, +            src: srcElement.src, 
-                                                     href: srcElement.href, +            href: srcElement.href, 
-                                                     tagName: srcElement.tagName, +            tagName: srcElement.tagName, 
-                                                     type: 'error', +            type: 'error', 
-                                                     error: "resource load error" +            error: "resource load error" 
-                                                 })) +        })) 
-                                             +    
-                                         }+                               
 ``` ```
  
  
 ### 参考链接 ### 参考链接
 +
 1. https://www.cnblogs.com/liyongquan/p/9180562.html 1. https://www.cnblogs.com/liyongquan/p/9180562.html
  
 2. https://developer.mozilla.org/zh-CN/docs/Web/API/GlobalEventHandlers/onerror 2. https://developer.mozilla.org/zh-CN/docs/Web/API/GlobalEventHandlers/onerror
javascript_catch_error_globally.1623379253.txt.gz · 最后更改: (外部编辑)