gpt4 book ai didi

javascript - 等到功能完成

转载 作者:行者123 更新时间:2023-11-30 09:32:05 24 4
gpt4 key购买 nike

在另一个线程的一些帮助之后,我现在有一个工作代码等待 3000,然后将变量设置为 1。然后循环每 1000 检查一次,直到该变量发生变化,然后发出警报

var myvalue;

setTimeout(function() {
myvalue = 1;
}, 3000);

function check() {
if (myvalue == 1) {
alert("Value Is Set");
} else {
setTimeout(check, 1000);
}
}

alert("debug1");
check();
alert("debug2");

我现在的问题是,它不会等到 check() 函数完成后再继续。我添加了一些调试 alert 并且可以看到所有的都立即被触发。

如何在不使用超时的情况下让它等待?

最佳答案

您可以传递回调并在函数完成时调用它。

像这样:

var myvalue;

setTimeout(function() {
myvalue = 1;
}, 3000);

function check(callback) {
if (myvalue == 1) {
alert("Value Is Set");
callback && callback();
} else {
setTimeout(check, 1000, callback);
}
}

alert("debug1");
check(function() {
alert("debug2");
});

关于javascript - 等到功能完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45671517/

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