我写了一个二十一点脚本,我想以递归方式迭代,直到一个相当大的资金用完为止。我想对遥测进行分析。这是一个本地生活的脚本,除了我正在运行的浏览器环境之外,对任何事情都没有任何危险。
基本上,脚本假定是递归的,直到现金用完为止。它适用于大约5k左右的单手左右 - 对于高达10k的资金,然后它会抛出最大调用堆栈错误。但是,我需要更多的数据;喜欢> 100k手。
我搜索了SO的解决方案,我收集它是一个特定于浏览器的东西。任何想法都会非常感激!
附加的代码段:
function main() {
init();
if (bankRoll >= initialBet) {
determineBet();
}
else {
alert("Not enough moneyz to play!");
console.log("telemetry");
exitFunction();
}
bankRoll -= initialBet;
playTheGame(); // the whole game, betting, receiving cards, strategy etc
}
答案 0 :(得分:1)
我建议你使用循环:
function main() {
init();
while (bankRoll >= initialBet) {
determineBet();
bankRoll -= initialBet;
playTheGame(); // the whole game, betting, receiving cards, strategy etc
}
alert("Not enough moneyz to play!");
console.log("telemetry");
exitFunction();
}
我很难说我是否正确地重构了它,因为我不知道playTheGame
或determineBet
这样的功能,但我希望你明白这一点。