javascript - 执行带有参数的数组中的函数

标签 javascript arrays function

我想迭代一个函数数组,并向每个函数传递一些参数。

let board;
let hand;

const HandCheckers = [
    CheckForRoyalFlush(board, hand),
    CheckForStraightFlush(board, hand),
    CheckForQuads(board, hand),
    CheckForFullHouse(board, hand),
    CheckForFlush(board, hand),
    CheckForTrips(board, hand),
    CheckForPairs(board, hand),
    CheckForHighCard(board, hand),
];

for (let x = 0; x < HandCheckers.length; x ++) {
       HandCheckers[x](board, hand);
}

但是,这段代码失败了,给我带来了以下问题: ReferenceError:板未定义

如何从带有参数的数组中调用这样的函数?

干杯!

最佳答案

现在,当您在数组中声明函数时,您正在执行这些函数。如果您只想在数组中存储函数以供以后执行,请省略 ()。如果您希望函数在放入数组时使用 board 和 hand 的值执行,而不是在迭代数组时使用:

let HandCheckers = [
  CheckForRoyalFlush.bind(null, board, hand)
];
HandCheckers[0]();

关于javascript - 执行带有参数的数组中的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56452108/

相关文章:

javascript - 这个循环和返回数据的更好解决方案? Javascript

javascript - For循环: TypeError: Cannot read property '0' of undefined

javascript - 在 jQuery 中使用像素约束还原可拖动对象

java - 将 char 数组转换为字节数组并再次返回

Javascript for 循环填充对象

Java 数组索引越界异常

c++ - 如何制作反向数字猜谜游戏的功能?

javascript - 由于 ng-disabled 不起作用,将 anchor 标记重构为按钮

php - mysql date add 或 date sub with variable?

c - 返回指向数组的指针的函数 - 转换并获取值