callback 相关问题咨询
nodejs 里面callback函数返回,是不是只能返回一个值啊???比如说callback(err,a);值返回a,能不能这样callback(err,a,b,c,…);返回很多个参数,这样可以吗???如果不可以,那么要返回多个值的话,应该怎么办呢????
6 回复
可以
最好结构化一下
看: ES6 变量的解构赋值,函数的扩展
可以,看例子,参数可以封装为对象,或者用arguments获取多参数
function callback(err){
let args=Array.prototype.slice.call(arguments,1);
console.dir(err);
console.dir(args[1]);
}
callback.apply(undefined, ["error",1, 2, 3, 4, 5]);
function callback2(err,params){
console.dir(err);
console.dir(params[2]);
}
callback2("error",{1:"1a",2:"2a"});
看: ES6 变量的解构赋值,函数的扩展
f1 = function(cb){
cb('v1','v2','v3','v4');
}
f1(function(v1,v2,v3,v4){
console.log(v1,v2,v3,v4); // v1 v2 v3 v4
})