Nodejs中使用Async進行流程控制

由於Node.js 是異步編程模型,在流程控制上很麻煩很複雜,幾個簡單的順序步驟就會寫出一堆回調嵌套,很頭疼。試了幾個庫都不能很好的解決這個問題,在同事Michael推薦了Async給我後順利的簡化了不少代碼!

用到的有async.parallel(tasks, callback)async.waterfall(tasks, callback)async.each(coll, iteratee, callback)async.map(coll, iteratee, callback)

官方文檔已經把用法說得很詳細了,此處不再贅述。

需要注意的是,每一個task function中都要有callback,如果有if之類的條件則每種情況場景中也必須有一個callback。