Nodejs异步流程框架async的方法-创新互联

Async的简单介绍:

专注于为中小企业提供网站制作、网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业昌江免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了千余家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

Async是一个流程控制工具包,提供了直接而强大的异步功能。基于Javascript为Node.js设计,同时也可以直接在浏览器中使用。Async提供了大约20个函数,包括常用的map, reduce, filter, forEach等,异步流程控制模式包括,串行(series),并行(parallel),瀑布(waterfall)等。


https://github.com/caolan/async

我们常用的是以下四种:

  • 串行无关联
  • 串行有关联
  • 并行无关联
  • 智能控制

1.async.series:串行无关联:


多个函数或方法要依次执行,但是他们之间并没有什么联系,只有先后的顺序,比如我要写一个文件,写完之后像用户发送邮件,这两者之间没有必然的联系,但是发邮件必须在写文件完成之后。
async里有一个方法series可以实现这一流程,代码实现如下:


var async = require('async');
console.time('series');
async.series({
  one: function(callback) {
    callback(null, 'one');//callback('i am err','one');异常处理
  },
  two: function(callback) {
    callback(null, 'two');

  },
}, function(error, result) {
  //最后结果
  console.log('error: ' + error);
  console.log('result: ' + result);
  console.timeEnd('series');
});

// error: null
// result: [object Object]
// series: 4.472ms


本文标题:Nodejs异步流程框架async的方法-创新互联
浏览路径:http://cdiso.cn/article/shoss.html

其他资讯