gpt4 book ai didi

javascript - 如何使用 setTimeout 等待变量加载,同时接收 HTTP 请求!

转载 作者:数据小太阳 更新时间:2023-10-29 05:53:28 25 4
gpt4 key购买 nike

我在 JavaScript 中创建了一个函数,每 100 毫秒检查一次是否加载了全局变量。当加载变量时,函数将返回值变量如下图。在我的代码中,我使用 JavaScript 中的 HTTP 服务器,当特定的 HTTP 请求具有特定的时,变量将被加载 header 到达我的服务器。

function checkVariable()
{
if ( myvar != null )
{
return myVar;
}
else
{
window.setTimeout("checkVariable();",100);
}
}

我在一段代码中使用这个函数是这样的:

// arithmetis operations... [1]

myVar = checkVariable();

// arithmetic operations that use myVar [2]

myVar 以 null 启动。问题在于 [2] 中的算术运算是在 myVar 获得其值之前完成的。相反,我希望我的代码等到 myVar 得到它的值,然后继续操作。

在尝试setTimeout函数之前,我尝试使用while循环让代码等待,但是问题是HTTP服务器由于不断执行while循环而无法接收任何HTTP请求!

有人可以帮我解决这个问题吗?

提前致谢!

最佳答案

我可能会将剩余的算术运算作为回调。像这样的东西:

function checkVariable()
{
if ( myvar != null )
{
computeVariable(myVar);
}
else
{
window.setTimeout("checkVariable();",100);
}
}

然后:

// arithmetis operations... [1]

myVar = checkVariable();

function computeVariable(myVar) {
// arithmetic operations that use myVar [2]
}

关于javascript - 如何使用 setTimeout 等待变量加载,同时接收 HTTP 请求!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3224097/

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