jquery 窗口.onerror和javascript控制台错误

8fsztsew  于 2023-03-01  发布在  jQuery
关注(0)|答案(2)|浏览(250)

我有下面的代码来捕捉javascript中的错误

<script type="text/javascript">
   window.onerror = function(msg, url, linenumber) {
      console.log('Error message: '+msg+'\nURL: '+url+'\nLine Number: '+linenumber);
      return true;
   }
</script>

我打开了Chrome开发者控制台,并通过随机JavaScript代码生成ReferenceError

person.run();  // person object does not exist

抛出Uncaught ReferenceError: person is not defined并在控制台打印,但window.onerror没有捕获,为什么?

gj3fmq9x

gj3fmq9x1#

运行时脚本错误的事件处理程序。
请注意,一些/许多错误事件不会触发window.onerror,您必须专门监听它们。
打开此链接这是为你使用充分:
https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers.onerror

bbuxkriu

bbuxkriu2#

用于控制台或其他浏览器应用程序

document.onerror=function (errorMsg, url, lineNumber,colNumder,error){
    console.log('OnError');
     return true
}

function consoleErrorTrap(call){
    try{
        return call();
    } catch(e){
        let event= new ErrorEvent('error',{error:e})
        document.dispatchEvent(event);
    }   
}

consoleErrorTrap(()=>{
    throw new Error()
})

相关问题