1.parallel 并行执行并且相互之间没有关联,最后得到结果集
var fs = require('fs');
var async = require('async');
var func1=function (callback) { console.log("one") callback(null,"one")}
var func2=function (callback) { console.log("two") callback(null,"two")}
async.parallel([func1,func2],function (err,results) { console.log(results)})
输出结果
one two [ 'one', 'two' ]
2.waterfall 根据数组中的顺序串行执行,前一个的回调函数即是调用下一个函数
function first(cb){
fs.readFile('package.json',function (err,file) {
if(err){
console.log("first :::: readfile error")
}else {
console.log("first :::: readfile error")
console.log(file.toString())
cb(err,'first function')
}
})
}
function second(dataA,cb){
fs.readFile('README.md',function (err,file) {
console.log("second :::: ")
console.log(file.toString())
cb(err)
})
}
async.waterfall([first,second],function (err) {
console.log("This is the world's end")
})
3.async.series 串行且无关联,回调函数获取结果集。和parallel的唯一不同在于是串行
网友评论