var num = 0; var max = 10; function incrementNumber() { num++; //if the max has not been reached, set another timeout if (num < max) { setTimeout(incrementNumber, 500); } else { alert(“Done”); } } setTimeout(incrementNumber, 500);
如果用setInterval 可能出现 下次调用会在前一次调用前调用 (
True intervals are rarely used in production environments because it ' s possible that one interval will begin before the previous one has finished executing)