Javascript 使用多个函数的回调
我得到了下面的javascript问题,并有一些问题。Javascript 使用多个函数的回调,javascript,callback,Javascript,Callback,我得到了下面的javascript问题,并有一些问题。pipe(foo,bar,baz)(1,2,3)做什么?它是否传入3个带3个参数的函数?我不清楚表达式的语法 实现一个函数pipe(),该函数接受多个函数作为参数,并返回一个新函数,该函数将其参数传递给第一个函数,然后将结果传递给第二个函数,然后将第二个函数的结果传递给第三个函数,依此类推,最后返回最后一个函数的输出。换句话说,调用pipe(foo,bar,baz)(1,2,3)相当于调用baz(bar(foo(1,2,3))pipe(foo
pipe(foo,bar,baz)(1,2,3)
做什么?它是否传入3个带3个参数的函数?我不清楚表达式的语法
实现一个函数pipe()
,该函数接受多个函数作为参数,并返回一个新函数,该函数将其参数传递给第一个函数,然后将结果传递给第二个函数,然后将第二个函数的结果传递给第三个函数,依此类推,最后返回最后一个函数的输出。换句话说,调用pipe(foo,bar,baz)(1,2,3)
相当于调用baz(bar(foo(1,2,3))
pipe(foo,bar,baz)(1,2,3)
执行以下操作:
剩下的作业由您决定:)函数调用该函数后的括号。如果括号内有标识符或文字值(多个以逗号分隔),则这些值将作为输入传递给函数。那么,表达式的第一部分:
pipe(foo, bar, baz)
只是调用pipe
,在本例中,foo
、bar
和baz
是对3个函数的引用(不是对函数的调用,只是对它们的引用)
现在一个函数可以返回一个值,而这个值本身就是一个函数。因此,如果是这种情况,并且我们“评估”了管道
的返回值,那么调用该函数可能会:
pipe(foo, bar, baz);
结果如下:
function(a, b, c) {
// do something with a, b and c
}
在这种情况下,原始代码的剩余部分,(1,2,3)
将用于调用返回的函数,并将1,2,3
作为输入参数传递给它
下面是一个工作示例:
函数foo(x,y,z){
控制台日志(x,y,z);
}
功能条(){
//与问题/解决方案无关
}
函数baz(){
//与问题/解决方案无关
}
//此函数需要3个函数作为输入
功能管道(funcA、funcB、funcC){
//调用此函数时,它将返回另一个
//功能。。。
返回函数(num1、num2、num3){
//该函数使用输入调用其他函数
//从管道中取出并将其传递给foo
funcC(funcB(funcA(num1,num2,num3));
}
}
管道(foo、bar、baz)(1、2、3)代码>
管道
接受三个函数作为其参数。它返回一个函数,该函数接受三个值作为其参数。该函数的结果应该相当于调用baz(bar(foo(1,2,3))
。欢迎使用堆栈溢出!请仔细阅读,环顾四周,仔细阅读,特别是作业通常不是随意的;您的讲师、教程或课程将涵盖必要的主题,使您能够做到这一点。复习你的课程材料、课堂笔记等,并试着做这项工作。如果你遇到了一个特定的问题,彻底地研究它,如果你仍然困在那里,就发布你的代码和问题的描述。人们会乐意帮忙的。