异常处理
什么是异常?
计算机不能处理的状况称之为异常.-
异步异常对象和被try catch捕获的对象是一样的。
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',data)=>{ if(err) { throw err; } console.log(data); }) }catch(err){ console.log(111); //捕获不到异常 } //示例2 fs.access('hhaa.js',data)=>{ try{ if(err){ throw err; } }catch(error){ console.log(111);//可以捕获到异常 } }) //示例3 try{ fs.accessSync('hhaa.js'); }catch(err){ console.log("accessSync:"+ err); //可以捕获到异常 }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。