关于错误

错误分类

  • 及时运行错误:代码错误
  • 资源加载错误

错误的捕获方式

  • 运行时错误的捕获
    1、try..catch
try{
可能会发生错误的代码
}catch(e){}

2、window.onerror

/** 
 * @param {String} errorMessage  错误信息 
 * @param {String} scriptURI   出错的文件 
 * @param {Long}  lineNumber   出错代码的行号 
 * @param {Long}  columnNumber  出错代码的列号 
 * @param {Object} errorObj    错误的详细信息,Anything 
 */
window.onerror = function(errorMessage, scriptURI, lineNumber,columnNumber,errorObj) { 
  // TODO 
}
  • 资源加载时错误捕获
    1、Object.onerror

2、performance.getEntries()
返回一个已加载的资源数组,获取节点中的所有img标签,减去已加载的剩下的是未加载的
3、Error事件捕获(捕获阶段)

window.addEventListener('error', function (e) {
          console.log('捕获', e);
      }, true);
  • 跨域的js捕获错误
    1在script标签增加corssorigin属性
    2配置一下服务器,设置静态资源Javascript的Response为Access-Control-Allow-Origin

错误上报

1、ajax通信上报
2、利用Image对象上报

(new Image()) = 'http://baidu.com/tesjk?r=tksjk';//上报的路径

你可能感兴趣的:(关于错误)