我想用JavaScript構建遞歸超時函數。該函數應該遞歸運行直到它完成,每當條件不滿足時將超時乘以1.5。如何創建遞歸超時函數
到目前爲止,這是我所擁有的,但它不工作atm。不知道我做錯了什麼。
var condition;
function doSomething(arg)
{
if (window.condition === true)
{
recursiveTimeout(arg, 3500);
}
else
{
doSomethingElse(arg);
}
}
function recursiveTimeout(arg, time)
{
setTimeout(function(){
if (window.condition === true)
{
var newTime = (time * 1.5);
recursiveTimeout(arg, time);
}
else
{
doSomethingElse(arg);
}
}, time);
}
不知道爲什麼這不工作。任何幫助表示讚賞。
last recursiveTimeout(arg,time);這不應該是新的時間? – 2014-09-11 13:16:07