我想迭代一个函数数组,并向每个函数传递一些参数。
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/