【发布时间】:2012-04-17 15:44:35
【问题描述】:
我使用下面的代码等待,然后执行下一个循环:
function loop()
{
setTimeout(function()
{
process_number(a[i]);
i++;
if (i < a.length)
loop();
else
{
alert("done!");
}
}, 5000);
}
我想改成像 jQuery $.get 完成后执行的回调函数。
$.get("test.cgi", { name: "John", time: "2pm" },
function(data){
alert("Data Loaded: " + data);
});
function loop()
{
//where process_number executed complete, do next loop
//process_number(a[i]);
i++;
if (i < a.length)
loop();
else
{
alert("done!");
}
}
函数process_number执行时间不确定。
【问题讨论】:
-
process_number(a[i]);会发生什么? (如果它不相关,你就不应该包含它)i的第一个值是什么? -
process_number(a[i]) 是流程数据函数,非常重要。我的第一个值为 0。@ajax333221
-
我的意思是与问题无关,(我知道这对你很重要)。在这个站点中,您应该将代码缩减到可能重现问题的更少代码。但是,并不是每个人都会在发帖前花 1 小时阅读常见问题解答
标签: javascript loops asynchronous callback