node.js当中对于回调函数的规定

由上一篇文章 关于node.js的一些简单理解 当中介绍了node.js的核心特性为事件驱动和非阻塞,故node当中会出现大量的异步操做,因此会出现大量的回调函数。node当中统一规定,若是一个函数须要定义回调函数,则遵循如下几点:node

一、回调函数必定要做为该函数参数当中的最后一个参数出现
function foo(name,age,callback){ }

这样处理是为了,当该函数不须要回调函数时,最后一个参数能够不传,这样也不会影响该函数当中其余参数的传递。segmentfault

二、回调函数当中的第一个参数默认接收错误信息,从第二个参数开始才是真正的回调数据,这样便于外界获取调用时出现的错误信息。(强调错误优先的回调函数)
const fs = require('fs');
fs.readFile(fsPath,(err,data)=>{
    if(err){
        throw err;
    }else{
        
    }
});

由于对于异步操做来讲,若是其内部出现错误,是没法经过try catch的方式捕获异常。故为了在异步操做出现错误以后,及时的让外界知道,并终止回调函数的执行,故错误信息以回调当中第一个参数的方式传递。异步

相关文章
相关标签/搜索