Mopecat / Daily-Mission-Board

每日任务公告板。
4 stars 1 forks source link

任务十六:window.onerror 和 window.addEventListener('error')的区别是什么? #19

Open Mopecat opened 4 years ago

HHardyy commented 4 years ago

window.onerror:全局变量,默认null。js运行时错误触发。 window.onerror = function (错误信息:String, 错误url:String, 错误行:Number, 错误列:String, Error ) {} @return true: 阻止执行默认事件处理函数 没有或者false:在console打印异常

addEventListener('error', function () {}, true): 监听js运行时错误事件,比window.onerror先触发,callback传参只有一个保存所有错误信息的参数,不能阻止默认事件处理函数的执行,但可以全局捕获资源加载异常的错误比如当资源加载错误,加载资源的元素会触发一个error的Event并执行该元素上的onerror,这些onerror不会冒泡到window,但可以在捕获阶段捕获