美文网首页
js异常捕获

js异常捕获

作者: 踩坑怪At芬达 | 来源:发表于2020-01-08 15:12 被阅读0次

如果觉得还有点用,请您给我一个赞!您的赞是我坚持下去的动力

常用的3种异常捕获方式

1、listener监听

window.addEventListener('error',(e)=>{
})
window.addEventListener('error',(e)=>{
  //可以捕获<img>标签资源加载失败
},true)

特点:

  • 利用冒泡阶段的捕获,可以捕获到<img>等标签的资源加载失败的onerror事件
  • 捕获顺序优先级高于 window.onerror ,也就是异常会先进入listener内,然后再进入到window.onerror
  • 如果在处理完事件,不想window.onerror或其他listener捕获的话,使用 stopImmediatePropagation()来拦截

2、全局onerror

window.onerror=function(e){
}

3、try-catch

try{
  return 1;
}catch(e){
  return 2;
}finally{
  return 3;
}
  return 4;

特点:

  • try{}内的异常会被catch{}部分捕获,不会继续被window.onerrorlistener捕获
  • finally{}内的异常会直接被Listernwindow.onerror捕获,不会被自己的catch{}捕获
  • catch{}块内产生新的异常,将不会被任何东西捕获
  • 关于这几个return
    • 当有finally{}的时候,如果finally{}内没有产生新的异常则return 3,如果产生了异常则不会return而是中断了.
    • 当没有finally{}的时候,如果进入了catch{}return 2,不然则return 1
    • return 4不会被执行到

4、监听unhandledrejection

window.addEventListener('unhandledrejection',(e)=>{
})

特点:

  • 用于监听Promise内产生未被catch的异常
  • Promise在catch自己的异常中产生的新异常也将被捕获

如果觉得还有点用,请您给我一个赞!您的赞是我坚持下去的动力

相关文章

  • 前端异常监控window.onerror unhandledre

    关于前端异常监控,我们需要做到捕获JS异常和代码中未捕获的promise异常,然后向服务器上报 捕获JS异常 在了...

  • js异常捕获

    一、js异常捕获的两种方式: 1、try...catch2、window.onerror try...catch ...

  • js异常捕获

    如果觉得还有点用,请您给我一个赞!您的赞是我坚持下去的动力 常用的3种异常捕获方式 1、listener监听 特点...

  • JS如何捕获异常

    一、使用try,catch 二、使用Windows.onerror

  • js笔记四十一类数组转换为数组(浏览器异常捕获)

    类数组转换为数组 浏览器异常信息捕获 js中使用try catch进行浏览器的异常信息捕获 第二行代码报错,如果用...

  • js异常处理总结

    js异常处理总结 先看最基础的情况 try catch 单层嵌套 多级嵌套,捕获下面的异常 预期异常:参数不合法,...

  • Python面向对象2

    异常 捕获异常image.png根据错误类型捕获异常image.png 未知错误捕获image.png 捕获异常完...

  • 工作总结-002

    异常捕获service捕获业务异常,自定义BaseException;interface捕获业务异常,以及其他异常...

  • C++学习第20课,异常

    1 异常 一句话概括:捕获异常 1.1 谁捕获异常?捕获谁? A捕获B A() { try{ B(); } ...

  • Python 面向对象 - 08 异常

    目录一、概念二、捕获异常2.1 简单的捕获异常语法2.2 错误类型捕获2.3 异常捕获完整语法三、异常的传递四、抛...

网友评论

      本文标题:js异常捕获

      本文链接:https://www.haomeiwen.com/subject/idhsactx.html