假设我有一个函数 roll() ,它随机返回一个值 1-6。现在,如果我有另一个名为 RepeatFunction 的函数,它接受一个函数作为参数和一个数字 n。 RepeatFunction 的目的是调用它作为参数的任何函数 n 次。但是,如果我将 roll() 作为参数传递,repeatFunction 会将其解释为 roll() 函数返回的值 1-6,而不是函数。目前我的代码如下:
function repeatFunction(func, n){
for(i = 0; i < n; i++){
func;
}
}
repeatFunction(roll(), 10);
我如何获得它,以便repeatFunction将func参数解释为函数而不是返回值,以便我可以在repeatFunction中再次调用它?
最佳答案
传递对 roll
函数的引用,并在重复函数内将其作为回调调用。像这样,
function repeatFunction(func, n){
for(i = 0; i < n; i++){
func();
}
}
repeatFunction(roll, 10);
关于javascript - 在 javascript 中将函数作为参数传递,而不是作为函数的返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48602432/