Async
var async = require('async');
// 串行无关联,两个请求时间中和
console.time('test');
// async.series([
// function(callback) {
// setTimeout(function(){
// callback(null, 'one')
// }, 2000)
// },
// function(callback) {
// setTimeout(function(){
// callback(null, 'two')
// }, 5000)
// }
// ], function(err, results) {
// console.log(results)
// console.timeEnd('test')
// })
// async.series({
// one: function(callback) {
// setTimeout(function() {
// callback(null, '1')
// }, 1000)
// },
// two: function(callback) {
// setTimeout(function() {
// callback(null, '2')
// }, 2000)
// }
// }, function(err, results) {
// console.log(results)
// console.timeEnd('test')
// })
// 并行无关联,最长时间请求时间
// async.parallel([
// function(callback) {
// setTimeout(function(){
// callback(null, 'one')
// }, 2000)
// },
// function(callback) {
// setTimeout(function(){
// callback(null, 'two')
// }, 5000)
// }
// ], function(err, results) {
// console.log(results)
// console.timeEnd('test')
// })
// 串行有关联
async.waterfall([
function(callback) {
callback(null, 'one', 'two')
},
function (arr1, arr2, callback) {
callback(null, arr1, arr2, 'three')
},
function (arr1, arr2, arr3, callback) {
callback(null, [arr1, arr2, arr3, 'done'])
}
], function(err, results) {
console.log(results)
})
npm scripts(脚本)
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"build": "node async.js"
},
npm test
npm build
网友评论