由上一篇文章 关于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
的方式捕获异常。故为了在异步操做出现错误以后,及时的让外界知道,并终止回调函数的执行,故错误信息以回调当中第一个参数的方式传递。异步