前端早早聊-跳槽营
2023-08-22 08:15 作者:see课薇_itspcool | 我要投稿
Node是单线程运行环境,一旦抛出的异常没有被捕获,就会引起整个进程的崩溃。所以,Node的异常处理对于保证系统的稳定运行非常重要。 node的处理方法: 1、使用throw语句抛出异常 常用的捕获异常方式,结构无法捕获异步运行的代码抛出的异常。 try{ throw "我是一个自定义的错误"; }catch(err){ console.log(err); } //异步 try{ setTimeout(()=> { throw "我是一个自定义的错误"; },0); }catch(err){ console.log(err); } 2、回调函数 将错误对象作为第一个参数,传入回调函数。这样就避免了捕获代码与发生错误的代码不在同一个时间段的问题。 let fs = require('fs'); fs.readFile('/test.txt', (err, data) =>{ if (err !== null) throw err; console.log(data); }); 3、通过EventEmitter接口,发出一个error事件。 var EventEmitter = require('events').EventEmitter; var emitter = new EventEmitter(); emitter.emit('error', new Error('something bad happened')); emitter.on('error', function(err) { console.error('出错:' + err.message); });