为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

摩羯座D羊 2017-07-15 23:10:02
<!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>
查看完整描述

1 回答

已采纳
?
西兰花伟大炮

TA贡献376条经验 获得超318个赞


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

查看完整回答
1 反对 回复 2017-07-15
  • 1 回答
  • 0 关注
  • 1431 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信