从上一篇文章对node.js的一些简单了解,node.js的核心特点是事件驱动和非阻塞,所以会有大量的异步node中的操作,所以会有大量的回调函数。node中统一规定,如果一个函数需要定义回调函数,遵循以下几点:1.回调函数必须作为函数参数的最后一个参数出现functionfoo(name,age,callback){}这是for,当函数不需要回调函数时,可以不传递最后一个参数,这样不会影响函数中其他参数的传递。2、回调函数中第一个参数默认接收错误信息,真正的回调数据从第二个参数开始,方便外界获取调用时出现的错误信息。(强调错误优先的回调函数)constfs=require('fs');fs.readFile(fsPath,(err,data)=>{if(err){throwerr;}else{}});因为对于异步操作来说,如果它内部发生了错误,是不可能通过trycatch来捕获异常的。因此,为了在异步操作发生错误后及时让外界知道,并终止回调函数的执行,在回调中将错误信息作为第一个参数传递。
