在看《深入浅出Node.js》的时候,书上第四章,有句话:“Node在处理异常上形成了一种约定,将异常作为回调函数的第一个实参传回,如果为空值,则表明异步调用没有异常抛出。”这句话下也有个简短的例子,本人刚学Node,感觉这句话好绕口。有没有更详细的例子?
2 回答
慕田峪9158850
TA贡献1794条经验 获得超7个赞
这句话指的是如下这种情况:fs.readFile('/etc/passwd',function(err,data){if(err){//判断是否发生错误,并做相应的处理}else{console.log(data);//处理结果}});基本上node的异步api都有这样的约定,即最后一个参数为一个回调函数,这个回调函数的第一个参数表示异步操作的过程中是否发生异常,第二个参数表示异步操作的结果。
慕勒3428872
TA贡献1848条经验 获得超6个赞
补充============如果需要抛出异常:functiondoSomething(a,callback){if(!a){returncallback(newError('paramserror.'));//回调传入Error}varb=a++;returncallback(null,b);//无异常}
添加回答
举报
0/150
提交
取消