使用setTimeout和setInterval作为计时器
在使用setTimeout和setInterval作为定时器时,如果定时器的方法被调用多次,
此时的定时器会被加倍执行,速度变快,为避免这一现象应在每一次调用计时器前清除计时器;停用时将计时器的起始重新置0
<body>
<p id="currentTime"></p>
<button id="btn1">start</button>
<button id="btn2">stop</button>
<script>
var btn1 = document.getElementById('btn1');
var btn2 = document.getElementById('btn2');
var T=document.getElementById('currentTime');
var time=null;
var n=0;
function t(){
++n;
T.innerHTML=n
}
btn1.onclick=function(){
clearInterval(time);
time= setInterval(t,1000);
}
btn2.onclick=function(){
n=0;
T.innerHTML=0
clearInterval(time);
}
</script>
</body>