Javascript Array of Functions

2022-08-30 02:45:34
var array_of_functions = [
    first_function('a string'),
    second_function('a string'),
    third_function('a string'),
    forth_function('a string')
]

array_of_functions[0];

这不能按预期工作,因为数组中的每个函数都是在创建数组时执行的。

通过执行以下操作来执行数组中任何函数的正确方法是什么:

array_of_functions[0];  // or, array_of_functions[1] etc.

谢谢!


答案 1
var array_of_functions = [
    first_function,
    second_function,
    third_function,
    forth_function
]

然后,当您要在数组中执行给定函数时:

array_of_functions[0]('a string');

答案 2

我想这就是原版海报想要实现的目标:

var array_of_functions = [
    function() { first_function('a string') },
    function() { second_function('a string') },
    function() { third_function('a string') },
    function() { fourth_function('a string') }
]

for (i = 0; i < array_of_functions.length; i++) {
    array_of_functions[i]();
}

希望这将有助于其他人(像20分钟前的我一样:-)寻找有关如何在数组中调用 JS 函数的任何提示。