gpt4 book ai didi

javascript - 在循环结束之前使用 for 循环的每个值

转载 作者:行者123 更新时间:2023-12-03 02:38:08 24 4
gpt4 key购买 nike

我有一个函数,它使用 for 循环获取值并将它们放入 1 个变量中。这个变量被困在一个表单中,然后提交。但问题是 for 循环将在输入并提交值时完成循环。所以每次我测试它时,变量“value”= 9999。谁能告诉我如何在每次函数循环时向变量加1?提前致谢。

function myFunction() {

var value1;
var value2;
var value3;
var value4;
var value;

for (value1 = 0; value1 < 10; value1++) {
for (value2 = 0; value2 < 10; value2++) {
for (value3 = 0; value3 < 10; value3++) {
for (value4 = 0; value4 < 10; value4++) {
value = value1.toString() + value2.toString() + value3.toString() + value4.toString() + '@2018';
document.getElementById('pswd').value = value;
document.getElementById('uid').value = 'test';
document.getElementById('commentForm').submit();
}
}
}
}
}

var loop = setInterval(function() {
myFunction();
}, 2000);

最佳答案

如果我正确地阅读了您的问题,您希望每次调用间隔回调时数字都会增加一吗?您可以通过跟踪函数外部的来实现此目的,并在每次调用回调时执行一次增量。然而,您使用 4 个变量基本上从 0 到 9999 进行计数。您可以通过使用一个变量来递增来大大简化这一过程。然后你可以用零填充它。看起来像这样。

var value = 0;

function myFunction() {
var pswd = value.toString().padStart(4, 0) + '@2018';
document.getElementById('pswd').value = pswd;
document.getElementById('uid').value = 'test';
document.getElementById('commentForm').submit();

value++;
if(value > 9999) {
value = 0;
}
}

var loop = setInterval(myFunction, 2000);

如果您无法使用padStart,则可以使用slice代替。您可以将该行替换为以下内容。

var pswd = ('0000' + value).slice(-4) + '@2018';

关于javascript - 在循环结束之前使用 for 循环的每个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48454648/

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