我正在尝试编写一个函数,它将函数作为参数(尽可能多)并返回它们。函数 funcArg 应该返回“Called me”。我使用 Array.prototype.slice.call(arguments);创建一个数组,但我不知道如何调用该数组中的函数。有任何想法吗?谢谢!!
var caller = function() {
return "Called ";
};
var adder = function() {
return " me";
};
var funcArgs = function() {
var myArray = Array.prototype.slice.call(arguments);
}
funcArgs(caller);
funcArgs(calleradder);
最佳答案
您可以使用 reduce
执行此操作.
var funcArgs = function() {
var functions = Array.prototype.slice.call(arguments);
return functions.reduce(function(total, f) {
return total + f();
}, '');
};
如果您从一组函数开始,它的工作方式。然后我们一次一个地完成每个功能。然后我们调用该函数并将其附加到前一个函数的结果中。将其分解为更简单的代码如下所示:
var funcArgs = function() {
var functions = [caller, adder];
var result = '';
result += functions[0](); // caller();
result += functions[1](); // adder();
return result;
};
关于javascript - 调用函数洞察函数/参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37334394/