在node.js里面所有API全是异步的,其实也就是代码执行的过程中如果是异步的,会先把异步得到的结果放入队列中,先执行同步的代码,等待同步的代码执行完成过后,才会把异步代码执行
这时候,我们就有一个思想,使用回调函数,把异步得到的结果先抛出去,然后当我们需要使用的时候在进行回调,函数a有一个参数,这个参数是个函数b,当函数a执行完以后执行函数b。那么这个过程就叫回调。
function e(m,n,Callback){
var d = m+n;
alert("一个从父函数e 产生的参数将要被传递给回调函数 ,这个参数是:"+d);
//这里才写你想调用的函数---参数要正确
Callback(d);
}
function callback(data){
alert("我是回调函数,我的名字叫:callback ,我接收到来自父函数的参数,参数是:"+data);
}
e(1,2,callback)
但是现在在ES6、ES7中新出来了async/await和Promise用法,这时候我们回调函数就可以使用返回一个Promise对象来代替,然后需要的时候使用async/await来取出Promise对象,async本质也就是将这个函数转换成一个promise对象,然后await就是等待异步执行的结果完成,转换成类似同步的执行流程
网友评论