Fork me on GitHub
代码改变世界

JS错误捕获

2015-10-20 10:25  autrol  阅读(493)  评论(0编辑  收藏  举报

 try/catch/finally错误捕获

try {
    //一旦try中出现错误,直接跳到执行catch的内容,执行完catch的内容,代码继续执行
    throw new Error('错误');   //发生错误
    console.log("此条语句未被执行");
} catch(e) {//捕获错误
    console.log("错误:", e);  //打印错误
    //接下来可以对错误进行处理
    ...
} finally {
    //无论是否报错,finally部分都会执行,还不如直接把代码写在外面呢,所以finally没什么用
    ...
}

window.onerror错误捕获

window.onerror = errorInfo;

function errorInfo(errorMsg, errorUrl, errorLine) {
    console.log("错误信息:", errorMsg);
    console.log("发生错误的文件:", errorUrl);
    console.log("发生错误的行号:", errorLine);
    return true;
}

throw new Error('错误');

如果想添加监控的话,可以将捕获到的错误信息,发送给服务器接收保存。