看了大部分博客都是setInterval以后,然后用事件clearInterval. 下面的例子是用闭包中的内部变量来控制定时器。
function fn() {
var i = 0;
var t = setInterval(function () {
i++;
console.log(i);
if (i == 10) {
clearInterval(t);
console.log(t);
}
}, 1000);
return t;
}
fn();
结果是
1
2
3
4
5
6
7
8
9
10
1