关于setTimeout()的疑惑,请看下面官方给的代码!
|
setTimeout()这个方法不是延迟函数表达式的执行吗,我知道timeCount()函数的外部用 setTimeout(timedCount,1000);是让timeCount()这个函数1秒后执行,但是并没有看出这个函数怎么就让num循环叠加了,是因为内部引用了 i=setTimeout(timedCount,1000);吗。但这个又是给计数停止提供参数i啊,怎么回事啊!num是是怎么循环起的啊? |
免责声明:本内容仅代表回答者见解不代表本站观点,请谨慎对待。
版权声明:作者保留权利,不代表本站立场。
|
|
|
|
|
|
|
|
varnum=0,i;functiontimedCount(){document.getElementById('txt').value=num;num=num+1;/*num每次+1*/i=setTimeout(timedCount,1000);/*这里运用递归,实现循环1秒执行一次*/}setTimeout(timedCount,1000);/*调用定义的timedCount()函数,延迟1秒执行*/functionstopCount(){clearTimeout(i);/*停止计时*/}你可以专门看递归,函数不断的调用函数本身,实现循环,在其他语言也常见的~~ |
|
|
|
|
|
|
|