我想知道是否有办法让setInterval
清楚自己。
这样的事情:
setInterval(function () {
alert(1);
clearInterval(this);
}, 2000);
我希望它继续检查它是否已经完成它会停止。
答案 0 :(得分:21)
尝试这种方式:
var myInterval = setInterval(function () {
alert(1);
clearInterval(myInterval);
}, 2000);
替代方法是使用setTimeout()
,如果您知道它只是一次性调用。
答案 1 :(得分:7)
(function() {
var runs = 3;
var i = setInterval(function() {
console.log("Number " + runs);
--runs;
if (runs == 0) {
clearInterval(i);
}
}, 1000);
}());