js 函数内部建立的计时器setTimeout调用自身函数,实际上就变成了setInterval,操做不当的话会致使计时器不断在建立javascript
在本函数内部清除计时器的时候带上 return ;java
例如:函数
<script type=
"text/javascript"
>
spa
var
t=3,timer;
function
sleep(){
if
(t<=0){
clearTimeout(timer);
alert(
"over"
);
//必定要return,否则下面又建立了新的定时器
return
;
}
alert(
"hello"
);
t--;
timer = setTimeout(
"sleep()"
, 1000);
}
sleep();
</script>