由于函数式编程机制的广泛采用,我发现自己通过更高阶函数减少了代码重复。通常我会编写自己的高阶函数,将其他函数作为参数。
出现了一些场景,我想重新使用更高阶函数提供的功能,但是一些所需的函数参数与我无关。
请注意以下伪代码:
Higher-Order-Function(Function A, Function B){
var x,y,x;
//fancy logic
A(x,y);
//fancy logic
B(y,z);
}
通常,通过提供两个函数作为参数来调用Higher-Order-Function
。但是,我想用单个函数A
调用该函数,我不关心``B. B
无能为力。这导致我写这样的东西:
//take any amount of parameters and does nothing
//doesn't change the input variables,
//and doesn't return anything.
//No function logic.
Do-Nothing(var...){ }
//the function will be using
A(var x, var y){
//does something important
}
//calling the higher order function like so:
Higher-Order-Function(A,Do-Nothing);
这个机制有名字吗?这种功能应该被称为什么?
零?
空?
沉?
身份?