Async.js使用详解 — Async是一个为异步的javascript提供了强大而直接的方法的工具模块。尽管初衷是为node.js设计,但是任然可以直接使用在浏览器中。
Async提供了近20种函数,包括了一些普通的操作(map, reduce, filter, each…),也有一些异步流程控制的模式(parallel, series, waterfall…)。所有的这些函数,都假使你遵循了nodejs的规定,即在你这些所有的异步程序执行完后都只有一个回调。
快速例子
async.map(['file1','file2','file3'], fs.stat, function(err, results){
// results is now an array of stats for each file
});
async.filter(['file1','file2','file3'], path.exists, function(results){
// results now equals an array of the existing files
});
async.parallel([
function(){ ... },
function(){ ... }
], callback);
async.series([
function(){ ... },
function(){ ... }
]);
还有其他很多可以使用的方法,下面会对他们进行一一详解。