nodejs async.parallel 参数接收

async.parallel是流程控制里边io并行的控制方法,如果async.parallel里边没有io操作,那么里边的函数执行都是串行的。

这里讨论一下参数接收的问题,上代码:

var async = require(‘async‘);

function process1(cb){
	var tx1 = {address:‘dadada‘};
	var total1 = 1;
	return cb(null,tx1,total1);

}

function process2(cb){
	var tx2 = {address:"qweweee"};
	var total2 = 2;
	return cb(null,tx2,total2);
}

async.parallel([
	function(done){
		process1(done);
	},
	function(done){
		process2(done);
	}
],function(err,tx,total){
	console.log(tx[0][0])
	console.log(tx[0][1]);
	console.log(tx[1][0]);
	console.log(tx[1][1]);
	//console.log(total[0]);
	//console.log(total[1]);
});

可以看到process1和process2都有三个参数,我们接收的时候是不是也是用三个参数去接收呢?其实不是,除了第一个err之外,只需要一个接受参数就可以了,如果有多余的,那么他是以数组的形式来展示的,上面代码的运行结果是:

{ address: ‘dadada‘ }
1
{ address: ‘qweweee‘ }
2

  

时间: 2024-12-24 13:31:08

nodejs async.parallel 参数接收的相关文章

nodejs Async 使用方法(解决多层回调嵌套)

由于nodejs是异步处理的,有时我们想同步从mysql里取出数据,最后在处理逻辑 就需要用到此扩展: 此扩展可以避免多层回调: 安装方法: npm install async 使用方法: 1.parallel 多个函数并行执行 1 var Async = require('async'); 2 3 Async.parallel( 4 [ 5 function(callback){ 6 // 此处查询数据库代码 7 DaoUser.getUserByID(userId, function(err

Struts2配置使用参数接收,转发与重定向,多方法,ognl使用与值传递,struts标签使用

本文档包括了 (1)首先加入jar包(最小jar组合) (1)   在web.xml中注册Struts2 这是一个前控制器作用是提供一个统一的入口,所有的请求都先经过前控制器就是这里,然后由他在做进一步处理 <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

学习笔记_springmvc注解形式的开发参数接收

springmvc基于注解的开发 注解第一个例子 1. 创建web项目 springmvc-2 2. 在springmvc的配置文件中指定注解驱动,配置扫描器 <!-- sprimgmvc 注解驱动 --> <!-- <mvc:annotation-driven /> --> <!-- springmvc的扫描器,一旦有扫描器的定义上面的mvc:annotation.. 就不需要了,扫描器已经有哪里注解驱动的功能 --> <context:compon

springMVC file文件上传及参数接收

springMvc文件上传,首先两个基础, 1.form表单属性中加上enctype="multipart/form-data" 强调:form表单的<form method="post" ...,method必须有,我这里是用的是post,至于get行不行没试过,没有method="post"也会报不是multipart请求的错误. 2.配置文件中配置MultipartResolver 文件超出限制会在进入controller前抛出异常,

Web---演示Servlet的相关类、表单多参数接收、文件上传简单入门

说明: Servlet的其他相关类: ServletConfig – 代表Servlet的初始化配置参数. ServletContext – 代表整个Web项目. ServletRequest – 代表用户的请求. ServletResponse – 代表用户的响应. 本篇博客讲解: ServletRequest – 代表用户的请求. ServletResponse – 代表用户的响应. 表单中的多选框参数接收. 文件的上传技术. ServletRequest : ServletRequest

WPF 利用Process.Start()方法启动指定路径下的exe文件并传递参数接收参数

WPF 利用Process.Start()方法启动指定路径下的exe文件并传递参数接收参数 在开发中遇到这样一个需求:WPF程序A启动WPF程序B并且传递参数,WPF程序B接收参数并处理. 如何来实现这样的需求呢,网络上已经有很多的文章描述这个问题,在这里做个记录. 首先通过如下代码启动WPF客户端B: private void ActionStartClientExcute() { var address = "exe位置"; Process process = new Proces

nodejs获取带参数的小程序码

打开项目目录 ,新建一个app.js文件 使用cnpm init命令初始化项目文件 安装express和superagent 并将安装信息保存到package文件中 安装完了 写一个接口看看有木有问题 OK 接口是可以的 接下来就要干正事了. 在app.js文件同级路径建一个config.js文件 用于保存小程序的appid和secret ,使用module.exports导出 在app.js里引用 同时使用superagent发起请求 把参数放到请求的网址里 在浏览器里调用一下 看看打印的内容

nodejs Async详解之三:集合操作

Async提供了很多针对集合的函数,可以简化我们对集合进行异步操作时的步骤.如下: forEach:对集合中每个元素进行异步操作 map:对集合中的每个元素通过异步操作得到另一个值,得到新的集合 filter:对集合中元素使用异步操作进行筛选,得到符合条件的集合 reject:与filter相似,只是判断条件时正好相反,得到剩下的元素的集合 reduce:使用一个初始值同集合中每一个元素进行异步操作,最后得到一个唯一的结果 detect:得到集合中满足条件的第一个数据 sortBy:对集合中的数

struts2 请求参数接收

1. 采用基本类型接受请求参数(get/post)在Action类中定义与请求参数同名的属性,struts2便能自动接收请求参数并赋予给同名的属性.请求路径:http://localhost:8080/action/register.action?id=33 public class HelloWorldAction { private Integer id; public Integer getId() { return id; } public void setId(Integer id)