Node.js异常处理
Posted 秋天1014童话
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Node.js异常处理相关的知识,希望对你有一定的参考价值。
异常处理
什么是异常?
计算机不能处理的状况称之为异常.异步异常对象和被try catch捕获的对象是一样的。
- 不会影响下面代码的执行。
- 错误里面的信息是堆栈信息。
- 可以给error对象设置一个code属性,便于我们自己对错误的管理。
var err = new Error('错误对象信息');
err.code = 100;
err.namename = '链接超市';
console.log(err);
console.log(err.code);
console.log(err.namename);
throw抛出异常,导致后面代码无法执行
try catch 只能捕获同步异常
try
fs.accessSync('./02sfdasdfio.js');
catch (err)
console.log("1"+err);
access(异步)与accessSync(同步)测试try…catch:
fs.access('hhaa.js',(err,data)=>
if(err)
//throw err;
console.log("access"+ err);
console.log(data);
)
try
fs.accessSync('hhaa.js');
catch(err)
console.log("accessSync:"+ err);
//执行结果:
accessSync:ENOENT:no such file or directory,access 'G:\\hhaa.js'
access:ENOENT:no such file or directory,access 'G:\\hhaa.js'
注意:try…catch只能捕获同步代码的异常:
//示例1
try
fs.access('hhaa.js',(err,data)=>
if(err)
throw err;
console.log(data);
)
catch(err)
console.log(111); //捕获不到异常
//示例2
fs.access('hhaa.js',(err,data)=>
try
if(err)
throw err;
catch(error)
console.log(111);//可以捕获到异常
)
//示例3
try
fs.accessSync('hhaa.js');
catch(err)
console.log("accessSync:"+ err); //可以捕获到异常
以上是关于Node.js异常处理的主要内容,如果未能解决你的问题,请参考以下文章