async.js 实现js函数执行顺序

借助Async.js可以简化和组织我们的多个异步函数,非常方便。
Async.js 本身使用在服务端-node.js 的,但它也可以用在浏览器端。

举例举例: 依旧是 a() -> b()-> c() 的调用序列:
async.series([function(callback){
a(callback);
}, function(callback){
b(callback);
}, function(callback){
c(callback);
}
]);

function a(callback){
setTimeout(function(){//用timeout模拟回调方法返回,
console.log("a 方法回调方法结束");
callback();
}, 5000);
console.log("a 方法结束");
}

function b(callback){
setTimeout(function(){
console.log("b 方法回调方法结束");
callback();
}, 3000);
console.log("b 方法结束");
}

function c(callback){
setTimeout(function(){
console.log("c 方法回调方法结束");
callback();
}, 1000);
console.log("c 方法结束");
}

输出结果:

a 方法结束
a 方法回调方法结束
b 方法结束
b 方法回调方法结束
c 方法结束
c 方法回调方法结束

这就达到了我们的需要,在这里,需要主意的是,方法要改造一下

//方法参数可以多个,但最后一个必须是callback, 

如: function(req,res, callback) 也是可以的
async.series([function(callback){
a(callback);
}........

async.js依赖nodeunit.js,且引入时必须在nodeunit.js之后
<script src="js/nodeunit.js"></script>
<script src="js/async.js"></script>

async的其它方法,和安装方式见官方网站 

https://github.com/caolan/async


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值