效果:數值從0到10來回變化
代碼:
var a=0var timer1,timer2;function add(){a++;console.log(a);if(a>=10){clearInterval(timer1);timer2=setInterval(sub,200);}}function sub(){a--;console.log(a);if(a<=0){clearInterval(timer2);timer1=setInterval(add,200);} }timer1=setInterval(add,200);----------分割線------------------------
此效果看似簡單,但是實際寫的時候發現JS定時器有一些不易察覺的坑,一不小心就會造成定時器疊加,導致變化越來越快,直到變化間隔達到瀏覽器的極限(chrome的為5ms)。值得注意的是,雖然每次都用clearInterval把timer清楚掉了,但是每次新的循環還是會使timer的值在原有基礎上加1
以上所述是小編給大家介紹的JS定時器實現數值從0到10來回變化,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!
新聞熱點
疑難解答