NodeJS错误处理与日志专题测试
考察知识点
- 错误处理基础 - 错误捕获原则、Error对象使用、错误类型识别
- try/catch/finally - 同步错误捕获、finally执行顺序、return覆盖问题
- 异步错误处理 - 回调错误处理、Promise.catch、async/await异常捕获
- 全局未捕获异常 - uncaughtException、unhandledRejection、进程退出处理
- 日志记录基础 - console输出流、stdout/stderr区别、日志输出位置
- 日志级别管理 - debug/info/warn/error级别、级别过滤机制、生产环境策略
Node.js中错误处理的核心原则是什么?
在Node.js中,错误可以通过throw语句、回调函数的第一个参数、Promise.reject()等方式进行传播。
关于try-catch-finally语句块的执行顺序,以下哪项描述正确?
以下代码的输出结果是什么?
function test() {
try {
return 'try返回值';
} finally {
return 'finally返回值';
}
}
console.log(test());
try-catch-finally语句中,______块包含可能抛出异常的代码,______块用于捕获并处理异常,_______块无论是否发生异常都会执行,常用于________操作。
关于try-catch的正确使用,以下哪些做法是推荐的?
Node.js回调风格API中,错误参数的位置和约定是什么?
Promise链中未被catch捕获的错误会如何处理?
使用async/await时,以下哪些方式可以正确处理异步错误?
以下哪种方式可以正确创建自定义错误类,使其拥有正确的name属性和堆栈信息?
以下哪些是Node.js/JavaScript内置的错误类型?
可以使用instanceof运算符来判断错误对象的类型,例如err instanceof TypeError。
Error对象的三个标准属性分别是:_______存储错误描述信息,______存储错误类型名称,______存储调用堆栈跟踪信息。系统错误还可能包含______属性存储系统错误代码。
以下哪个process事件用于捕获未处理的Promise拒绝?
Node.js中domain模块的主要作用是什么?
关于全局未捕获异常处理的最佳实践,以下哪些说法正确?
在Node.js中,使用process.on('_________________')捕获未处理的同步异常,使用process.on('__________________')捕获未处理的Promise拒绝。这两个事件应在应用______注册,且主要用于________,处理后建议调用____________退出进程。
以下哪个console方法可以打印对象的完整结构,包括嵌套属性?
console.log和console.info输出到stdout(标准输出),而console.error和console.warn输出到stderr(标准错误)。
在生产环境中,最常记录的日志级别是哪个?
📝 发现内容有误?点击此处直接编辑
长按或扫描二维码,立即体验