猿问

为什么计时器setTimeout 要使用两次,函数内外个一次,而setInterval则只要在函数外使用一次?


<!DOCTYPE html>

<html>

 <head>

  <title>浏览器对象</title>  

  <meta http-equiv="Content-Type" content="text/html; charset=gkb"/>   

 </head>

 <body>

  <!--先编写好网页布局-->

  <h3>操作成功</h3>

  <p><span id="test"></span>秒后回到主页 <a href="javascript:back()">返回</a></p>

  

 

  <script type="text/javascript">  

 

   //获取显示秒数的元素,通过定时器来更改秒数。

 var num=5;

function clock(){

   

    document.getElementById("test").innerHTML=num;

    num-=1;

 

   if(num==0){

       location.assign("http://www.imooc.com");

   }

      //setTimeout("clock()",1000);

}

setInterval("clock()",1000);

//setTimeout("clock()",1000);

   //通过window的location和history对象来控制网页的跳转。

  function back(){

      window.history.back();

  } 

 </script> 

</body>

</html>


摩羯座D羊
浏览 1432回答 1
1回答

西兰花伟大炮

只需要知道setInterval会一直执行,而setTimeout只执行一次就可以理解了,因为后者只执行一次,所以要达到这个效果,就需要在函数里面再放一个,相当于递归调用
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答