问答详情
源自:8-6 取消计时器clearTimeout()

为什么要写两个setTimeout?

function timedCount(){    document.getElementById('txt').value=num;    num=num+1;    i=setTimeout(timedCount,1000);  }    setTimeout(timedCount,1000); 为什么要写两个setTimeout?

提问者:febephycho 2017-08-23 14:01

个回答

  • Nico34
    2017-09-04 11:20:33

    因为要开启循环必需在函数外调用一次函数本身才可以啊。

  • ekberrr
    2017-08-23 15:53:46

    外面那个延迟一秒执行timedCount()函数,里面那个循环执行timedCount()函数。外面那个主要作用就是等dom节点都加载完才执行函数。

  • qq_HS陌殇YS_0
    2017-08-23 15:50:24

    function timedCount(){  

          document.getElementById('txt').value=num; 

           num=num+1;   

         i=setTimeout(timedCount,1000);  

    }    

    setTimeout(timedCount,1000); 

    最后一行setTimeout,是初始时的延迟。

    接着执行timedCount()函数,然后num没达到id=“txt”的值,所以num+1,直到最后一次setTimeout执行timedCount函数时,不再执行if条件下的内容~