timedLoop(ms, callback) 设置间隔执行

功能分类: Control Applab JavaScript 少儿编程

设置每间隔指定的 ms 毫秒数,就执行指定的 callback 回调函数一次。

在 APP 应用里,有时需要每间隔一定时间,就执行一次某些操作,比如 “打地鼠” 游戏里的地鼠每隔一定时间出现一次。timedLoop() 会有一个数值类型的返回值,这个返回值可以作为参数传递给 stopTimedLoop(timeout) 方法,用于取消这个间隔执行设置。

示例代码


示例代码:10 次随机移动 每间隔 0.5 秒,进行一次随机移动。10 次后取消次间隔执行设定。


// 每间隔 0.5 秒,进行一次随机移动。10 次后取消次间隔执行设定
var count=0;
timedLoop(500, function(){
  var x = randomNumber(-50, 50);
  var y = randomNumber(-50, 50);
  console.log("Move " + x + " horizontally and " + y + " vertically.");
  move(x, y);
  count=count+1;
  if (count==10) {
    stopTimedLoop();
  }
});

示例代码:计时 开始计时,并将计时信息输出到控制台日志。


// 开始计时,并将计时信息输出到控制台日志
var seconds = 0;
timedLoop(1000, function() {
  seconds = seconds + 1;
  console.log(seconds + " seconds have elapsed");
});

语法规则


timedLoop(ms, callback);

参数说明

名称 类型 必需 参数描述
ms number Yes 在重复执行指定方法之间,需要间隔的毫秒数。
callback function Yes 每间隔指定时间长度,要回调执行的函数。

返回值

返回一个数字类型的间隔器 id 唯一标识。使用这个 id 可以将这个间隔执行设置取消。

提示说明

  • 可以使用 stopTimedLoop(loop) 方法来取消通过 timedLoop() 设置的定时执行功能。
  • 间隔调用的是指定的回调函数,并且异步执行,所以 timedLoop() 后面的代码不会等这个间隔执行功能完成后才运行。

查看更多少儿编程教程、JavaScript 介绍

返回文档首页