Error 的基本使用
创建一个 Error
let errObj = new Error('This is a error')
console.log(errObj)
// 输出
Error: This is a Error
at Object.<anonymous> (E:\AllCode\Code\html+css+js\23_promise小书\src\05.error对象.js:2:16)
at Module._compile (internal/modules/cjs/loader.js:689:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
at Module.load (internal/modules/cjs/loader.js:599:32)
at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
at Function.Module._load (internal/modules/cjs/loader.js:530:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:742:12)
at startup (internal/bootstrap/node.js:283:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:743:3)
Error 的 toString() 方法
let errObj = new Error('This is a error')
console.log(errObj.toString())
// 输出
Error: This is a Error
与 try…catch… 结合使用
这样使用不会触发catch
触发 catch 需要使用 throw。
try {
let errObj = new Error('This is a Error')
console.log('try', errObj.toString())
} catch (e) {
console.log('catch', e) // 不会执行
}
这样使用
try {
let errObj = new Error('This is a Error')
console.log('try', errObj.toString())
throw errObj // <= 关键,触发 catch 语句
} catch (e) {
console.log('catch', e.toString())
}
// 输出
// try Error: This is a Error
// catch Error: This is a Error