位置: 编程技术 - 正文
推荐整理分享深入学习nodejs中的async模块的使用方法(nodejs基础教程),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:nodejs入门,nodejs详解,nodejs基础知识,nodejs 深入浅出,nodejs怎么学,nodejs 深入浅出,nodejs基础知识,nodejs实战教程,内容如对您有帮助,希望把文章链接给更多的朋友!
最近在学习nodejs,这两天学习了async模块这个地方知识点挺多的,所以,今天添加一点小笔记。
async模块是为了解决嵌套金字塔,和异步流程控制而生.常用的方法介绍
npm 安装好async模块,然后引入就可以使用 var async = require('async');
1. series(tasks,[callback])
多个函数从上到下依次执行,相互之间没有数据交互
运行结果:
如果中途发生错误,则将错误传递到回调函数,并停止执行后面的函数
运行结果:
2.parallel(tasks,[callback])
多个函数并行执行,不会等待其他函数
运行结果:
3个函数分别延迟ms,ms,ms 结果ms就执行完毕.
如果中途出错,则立即将err和值传到最终的回调函数,其他未执行完毕的函数将不再执行,但是要占一个位置
运行结果:
3.waterfall(tasks,[callback]) :瀑布流
依次执行,前一个函数的输出为后一个函数的输入
执行结果:
如果中途出现错误,后面的函数将不在执行,之前执行的结果和错误信息将直接传到最终的回调函数
运行结果:
4.parallelLimit(tasks,limit,[callback])
和parallel类似,只是limit参数限制了同时并发执行的个数,不再是无限并发
运行结果:
三个函数分别是延迟ms,ms,ms结果执行时间为什么是ms呢
因为首先执行函数1和2,
3秒后函数2执行完毕,这个时候函数3开始执行,
5秒后函数1执行完毕,函数3还有2秒,
7秒后函数3执行完毕.
5.auto(tasks,[callback])
多个函数有数据交互,有的并行,有的依次执行
运行结果:
5秒运行完毕,
函数1和2并行,3秒执行完毕,
函数1和2执行完毕后,函数3,4依次执行共计5秒.
6.whilst(test,fn,[callback])
相当于while循环,fn函数里不管是同步还是异步都会执行完上一次循环才会执行下一次循环,对异步循环很有帮助,test是条件,为true时执行fn里的方法
运行结果:
7.doWhilst
和whilst类似,和do-while一个意思,首先执行一次fn,再判断,和whilst相比它把fn和test位置交换了而已.
until和whilst相反,当test判断为false的时候执行fn里的方法,为true时跳出,
doUntil与doWhilst相反.
8.forever(fn,errback)
forever就是无限循环了.只有当中途出现错误的时候才会停止
运行结果:
9.compose(fn1,fn2,fn3...)
这个方法会创建一个异步的集合函数,执行的顺序是倒序.前一个fn的输出是后一个fn的输入.有数据交互
运行结果:
相当于 var m=2; (m*2+3)*5 =;
在我的项目开发中waterfall用的最多.
更多方法详情 :
nodejs中解决异步嵌套循环和循环嵌套异步的问题 众所周知,nodejs异步和循环对于初学者来说是一个很大的问题,今天我们就一起来了解和解决它当异步和循环同时出现的时候这个问题就会被放大很多倍.
nodejs中sleep功能实现暂停几秒的方法 我在网上了解了一下nodejs中sleep功能,搜索了很多关于nodejs中sleep功能介绍,下面我来记录一下,有需要了解的朋友可参考。希望此文章对各位有所帮助。一
详解nodejs的express如何自动生成项目框架 本文主要介绍了nodejs的express如何自动生成项目框架,这里整理了详细的代码,有需要的小伙伴可以参考下。nodejs版本为:4.X,express版本为4.X1.全局安装2个模
标签: nodejs基础教程
本文链接地址:https://www.jiuchutong.com/biancheng/380880.html 转载请保留说明!友情链接: 武汉网站建设