异步编程是指由于异步I/O等因素,无法同步获得执行结果时,
在回调函数中进行下一步操作的代码编写风格,常见的如setTimeout函数、ajax请求等等
http://cnodejs.org/topic/54acfbb5ce87bace2444cbfb
并不是node中的,但是我们开发中经常使用
使用npm init初始化项目
安装cnpm install async --dev
https://www.npmjs.com/package/async
http://caolan.github.io/async/
创建一个文件
async.js
导入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
可以修改package.json中的scripts中的
"build":"node async.js"
命令行执行npm run build
使用npm run 可以查看可运行命令
nodejs中的异步流程序控制nsync
转载上一篇:NodeJS链接MongDB
下一篇:怎么理解js的面向对象编程
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
matlab习题 —— 程序控制流程练习
题二① 已知 2022 年 1 月 1 日为星期六,建立函数,其中输入变量为按年月日排序的 8 位整数(如 20220530),
matlab 开发语言 矩阵 斐波那契数列 鸡兔同笼 -
python程序控制结构心得 python的程序控制结构
计算机程序可以看做是一条一条顺序执行的代码,顺序结构是程序的基础,但是单一的顺序结构是无法解决所有的问题,因此需要引入控制结构来更改程序的执行顺序以满足多样的功能需求。程序有三种基本结构组成:顺序结构,分支结构和循环结构。而分支与循环结构主要是通过条件判断(if),条件循环(while)和迭代循环(for)来实现。条件判断(if - elif - else):条件判断是一种分支结构,分支结构是程序
python程序控制结构心得 python while true python内循环只执行一次 单分支 两路分支和多分支的if结构 条件判断