JavaScript中的异常处理

本文主要介绍JavaScript中的异常处理

JavaScript中的异常处理可以用来避免浏览器向用户报告错误信息,也可以向调用者报告错误信息。

try/catch/finally

try语句允许我们定义在执行时进行错误测试的代码块。
catch 语句允许我们定义当 try 代码块发生错误时,所执行的代码块。
finally 语句在 try 和 catch 之后无论有无异常都会执行。
注意: catch 和 finally 语句都是可选的,但你在使用 try 语句时必须至少使用一个。

1
2
3
4
5
6
7
8
9
10

try {
tryCode - 尝试执行代码块
}
catch(err) {
catchCode - 捕获错误的代码块
}
finally {
finallyCode - 无论 try / catch 结果如何都会执行的代码块
}

throw

throw 语句创建自定义错误。

1
2

throw "error";

Error

通过Error的构造器可以创建一个错误对象。当运行时错误产生时,Error的实例对象会被抛出。

1
2
3
4
5
6
7

new Error([message[, fileName[, lineNumber]]])

// message 可选, 描述错误的信息, 类型为一个字符串,如果不是字符串则会调用其toString()
// fileName 可选,被创建的Error对象的fileName属性值,默认为调用Error构造器的文件名
// lineNumber 可选, 默认为调用Error构造器的文件行号
// 注意: fileName和lineNumber参数是非标准的api,使用时需要注意其兼容。

console.error()

console.error() 方法用于输出错误信息到控制台。

1
2

console.error(message)

console.warn()

console.warn() 方法用于在控制台输出警告信息。

1
2

console.warn(message)

console.dir()

console.dir() 方法用于打印一个对象的所有属性和方法。

1
2

console.dir(object)

window.onerror

window.onerror用来监听js运行异常。

1
2
3
4
5
6
7
8

window.onerror = function(errorMessage, scriptURI, lineNumber,columnNumber,errorObj) {
console.log("错误信息:" , errorMessage);
console.log("出错文件:" , scriptURI);
console.log("出错行号:" , lineNumber);
console.log("出错列号:" , columnNumber);
console.log("错误详情:" , errorObj);
}
扫一扫,请老师喝水