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

如何使用setInterval和ClearInterval?

如何使用setInterval和ClearInterval?

慕容708150 2019-07-03 16:55:11
如何使用setInterval和ClearInterval?function doKeyDown(event) {     switch (event.keyCode) {     case 32:         /* Space bar was pressed */         if (x == 4) {             setInterval(drawAll, 20);         }         else {             setInterval(drawAll, 20);             x += dx;         }         break;     }}大家好,我想打电话drawAll()一次不创建环路那个电话drawAll一次又一次,是使用递归方法还是应该使用递归方法?clearInterval?也请告诉我用clearInterval?谢谢:)
查看完整描述

3 回答

?
泛舟湖上清波郎朗

TA贡献1818条经验 获得超3个赞

setInterval建立一个反复出现定时器。它返回一个可以传入的句柄。clearInterval阻止它开火:

var handle = setInterval(drawAll, 20);// When you want to cancel it:clearInterval(handle);handle = 0; 
// I just do this so I know I've cleared the interval

在浏览器上,句柄保证是不等于0因此,0为“没有计时器集”设置一个方便的标志值。(其他平台可能返回其他值;例如,NodeJS的计时器函数返回一个对象。)

将函数调度到火一次,用setTimeout相反。它不会再开火了。(它还返回一个句柄,您可以通过clearTimeout如果合适的话,在它发射之前一次。)

setTimeout(drawAll, 20);


查看完整回答
反对 回复 2019-07-03
?
HUX布斯

TA贡献1876条经验 获得超6个赞

间隙是一种选择:

var interval = setInterval(doStuff, 2000); // 2000 ms = start after 2sec function doStuff() {
  alert('this is a 2 second warning');
  clearInterval(interval);}


查看完整回答
反对 回复 2019-07-03
  • 3 回答
  • 0 关注
  • 586 浏览
慕课专栏
更多

添加回答

举报

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