计时器setTimeout中的一点小问题
为什么要在12和14行分别填入:setTimeout("starCount()",1000);才可以???仅仅在12或者14是不行的
为什么要在12和14行分别填入:setTimeout("starCount()",1000);才可以???仅仅在12或者14是不行的
2016-03-02
//一开始我也没想明白,后来仔细看看 执行顺序 我想明白了,答案如下 按顺序看... <script type="text/javascript"> var num=0; // 1.函数没有调用前 是不存在的 没有创建的,这个你得想明白 function startCount() { // 3.被调用了 // 6. 被内部setTimeout 调用 document.getElementById('count').value=num; //4.执行 第一步 7.执行 第一步 num=num+1; //4.执行 第二步 7.执行 第二步 setTimeout("startCount()",1000); /*5.执行 第三步 1秒后调用 startCount函数 8.执行 第三步 1 秒后调用 startCount函数 形成循环*/ } setTimeout("startCount()",1000);// 2.这段的作用是1秒后调用 startCount函数 /*9. 其实这个了写成立即调用也能达成效果 startCount(); 函数外这个setTimeout("startCount()",1000) 误导了大家,产生了疑惑,主要原因还是基础不扎实。*/ /*10.个人粗浅之见,如有错误,请温柔指正,不胜感激!*/ </script>
举报