微信小程序经验分享:位置闹铃之定时器的讲解
扫描二维码
随时随地手机看文章
需求
设定了监控点位置以后就需要按照一定的时间间隔取得设备的位置,并比照设定好的监控点,如果有符合条件的监控点则触发相应的动作。为了实现上述功能首先需要实现按一定时间间隔做某件事的功能--定时器。
说明
function startTimer(interval, onTimer) {
var time = setTimeout(function () {
onTimer();
startTimer(interval, onTimer);
},
interval
)
}
函数startTimer内部调用了setTimeout函数,这个函数有两个参数:一个是Timeout发生时被调用的回调函数(借用C语言的说法),一个是时间间隔,单位是毫秒。
startTimer执行之后,系统开始计时。当指定的事件间隔经过以后,回调函数被执行:首先调用onTimer函数,它由startTimer的利用者指定。接下来再次调用startTimer函数,用于启动下一次定时器动作。如此循环往复。
使用时就简单了,例如可以像下面这样使用startTimer函数。
onLoad:function(){
startTimer(1000,function(){
console.log("OnTimer!")
});
},
目前虽然只是输出log,加下来的几天里,我们会以这里为入口,实现定期取得目前位置,确认监控点的功能。