gpt4 book ai didi

javascript - 为什么 setTimeout 如此善变且半功能性?

转载 作者:行者123 更新时间:2023-11-28 02:58:20 24 4
gpt4 key购买 nike

function load_result()
{
$.getJSON( "http://somesite.com/loadresult.php", function(data) {
if( data == undefined || data == null )
{
console.log( "no data" );
clearTimeout( lr_timeout );
lr_timeout = setTimeout( "load_result()", 2000 );
return;
}
insert_result_price( data );
clearTimeout( lr_timeout );
lr_timeout = setTimeout( "load_result()", 50 * ( Math.random() * 10 ) );

} );
}

lr_timeout是全局定义的,load_result函数最初是在document.ready函数中启动的。问题是该函数并不总是运行。我将在 Firebug 中观看它,并且我有另一个在始终有效的 setInterval 上设置的函数。

想法?

最佳答案

您的另一个 setTimeout 函数(始终有效的函数)是否也位于 $.getJSON 中?如果是这样,它是否在相同的 URL 上调用它(在您的示例中为 http://somesite.com/loadresult.php ,但我确信它在现实生活中有所不同)?

http://somesite.com/loadresult.php 可能是一个不稳定的资源,并且结果不一致是由该资源引起的,而不是 setTimeout。当然,如果他们都使用相同的资源,那么这就不是问题。

关于javascript - 为什么 setTimeout 如此善变且半功能性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1992280/

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