gpt4 book ai didi

javascript - 我应该采取什么方法来连续跳到有条件且无循环的函数?

转载 作者:行者123 更新时间:2023-12-03 01:40:07 25 4
gpt4 key购买 nike

//跳到第三段查看要点。

首先我想说我是编程初学者。我决定先开始编辑,然后才能从头开始创作。所以我找到了一个可以在互联网浏览器控制台(检查元素)中使用的脚本来执行许多任务。因此,起初脚本只有一个段落的大小,但在几天的时间里,我一直在添加和编辑它(我发现这真的很有趣)以创建一个更自定义的脚本。我想切入主题,但如果没有上下文,可能很难帮助我。

所以基本上我想出的脚本使用了大量的“函数”,即使在学习之后我也不是 100% 是什么,但我对它们的作用有足够的了解。因此,我使用这些函数来定义条件并执行不同的任务。我保留了许多功能来使一切井井有条并发现错误。然而;我现在遇到的问题是脚本无法正常工作,我找不到我的错误。

要点

我有许多函数按顺序下降,但我希望脚本在某些条件发生后返回到第一个函数。如果可能的话,我想在不使用循环的情况下执行此操作。我这样做的方法是调用类似的函数“函数名称”();

这是我的一些代码:

function roll() {
if (Dloss === false) {
if (loop === true) {
tbBet.value = start;
btRoll.click();
refreshIntervalId = setInterval(roll2, delay);
}
}
if (Dloss === true) {
if (loop === true) {
tbBet.value = start;
btRoll.click();
refreshIntervalId = setInterval(decision, delay);
}
}
}
function decision() {
if (Dloss === true) {
var thestring = document.getElementById('roll').value;
var thenumber = retnum(thestring);
if (thenumber < rollUnder) {
start = (start * remain).toFixed(2);
}
if (thenumber > rollUnder) {
start = (start * MultLoss).toFixed(2);
if (start > maxBetValue) {
loop = false;
}
btRoll.click();
clearInterval(refreshIntervalId);
roll();
}
btRoll.click();
clearInterval(refreshIntervalId);
roll3();
}
}

所以你可以看到我在哪里有 roll();在 if 语句中。我想让它循环回到开始,但它似乎不起作用。如果这是显而易见的事情,我很抱歉。我正在学习,经过一段时间的挣扎后,我决定在这里发布我的问题。预先感谢您的帮助。

---------编辑 1------------所以我想做的就是在这里调用函数 roll() :

                     btRoll.click();
clearInterval(refreshIntervalId);
roll();

那么,根据我的研究,这是唯一的方法,我这样称呼是否正确?我应该在这里发布整个脚本吗? (顺便说一句,抱歉,我是该网站的新手,仍在学习如何使用)

最佳答案

当一个函数结束时,它会返回到该函数被调用的地方。如果您希望 decision 函数中的代码在每次 roll 之后发生,您需要显式调用 decision()

function roll() {
if (Dloss === false) {
if (loop === true) {
tbBet.value = start;
btRoll.click();
refreshIntervalId = setInterval(roll2, delay);
}
}
if (Dloss === true) {
if (loop === true) {
tbBet.value = start;
btRoll.click();
refreshIntervalId = setInterval(decision, delay);
}
}
decision() // <--- Like so
}
function decision() {
if (Dloss === true) {
var thestring = document.getElementById('roll').value;
var thenumber = retnum(thestring);
if (thenumber < rollUnder) {
start = (start * remain).toFixed(2);
}
if (thenumber > rollUnder) {
start = (start * MultLoss).toFixed(2);
if (start > maxBetValue) {
loop = false;
}
btRoll.click();
clearInterval(refreshIntervalId);
roll();
}
btRoll.click();
clearInterval(refreshIntervalId);
roll3();
}
}

关于javascript - 我应该采取什么方法来连续跳到有条件且无循环的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50884435/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com