当前位置: 首页 > 工具软件 > Async Server > 使用案例 >

async的使用

慕弘深
2023-12-01

转自:http://www.jianshu.com/p/977b11cb61be

用过node.js 有时候一定会为js的异步问题感到头痛,
之前写过一篇博客是用递归解决异步问题的,node.js使用递归解决异步性问题
这次要给大家介绍的是 一个第三方库 async

安装

npm install async

引用

var async=require('async');

基本语法

解决多个无关函数的异步问题

async.series({
    1:function(done){
        console.log(1);
        done();
    },
    2:function(done){
        console.log(2);
        done();
    },
    3:function(done){
        console.log(3);
        done()
    }
},function(err){
    console.log(err);
})

如上3个方法会依次执行,需要注意

当每个方法执行完之后,必须通过调用回调来表示已执行完当前方法,才会继续执行;
最后的是用来捕获异常,出现异常不会继续向下执行;
大量相同数据的处理

这跟上面的我写的递归解决是同样的思想,只不过代码更为简洁明了

var array=[1,2,3,4,5]
var itreator=function(item,finish){
    console.log(item);
    finish();
}
async.eachSeries(array,itreator,function(err){
    console.log("all finish");
})

上面代码中当出现异常,和所有执行结束后到会执行最后的

console.log("all finish");

跟之前的相似,出现异常不会向下执行,同样的对于正常情况下,只有所有数据都处理完后才会输入“all finish”;

参考文献

同样还有很多处理方式异步同步交叉使用等等吧,
本人用的不是很多,
还有其他的很多方法,这是我比较常用的,其他方式的使用请见 :
官方github
更多Demo

 类似资料: