我想是的函數結果:測試一個條件是真還是假的javascript:等待使用的setInterval
調用一個函數check_and_wait()。它將繼續按設定的時間間隔檢查/循環一段指定的時間。
程序的其餘部分必須等待這個測試的結果。這是出錯的部分。它不必使用setInterval,這就是它現在如何實現的。
function test_condition(){
// do some test. return true or false
}
function check_and_wait(){
var maxtime = 3000;
var start = new Date().getTime();
condition = false;
var interval = setInterval(function() {
if(condition){return true;}
else{
if( new Date().getTime() - start < maxtime){
condition = test_condition();
}
else{return false;}
}
}, 250);
}
result = check_and_wait();
if(result){
//do something
}
else{
//do something else
}
那是不可能的。你需要重構你的邏輯。的 –
可能重複的[使用Javascript - 等待一函數結束](http://stackoverflow.com/questions/10311617/javascript-wait-a-function-to-finish) –