JS中自定义定时器让它在某一时刻执行

(编辑:jimmy 日期: 2024/10/8 浏览:2)

有时,处于需求的原因,我们需要在JS中写一个方法,然后让它在某一时刻执行,即需要在JS中写一个定时器,当时间达到要求时间时,需要执行的方法自动执行,下面小编简单说一下我是怎么实现的

var tMinutes=0; 
var tHours=0; 
var go; 
function dingshi(hours,minutes){ 
tHours = hours; 
tMinutes = minutes; 
go=setInterval(run,3000); 
} 
function run(){ 
var date=new Date(); 
if((date.getMinutes()-tMinutes==0) 
&&(date.getHours()-tHours==0)){ 
clearInterval(go); 
getData(); //要执行的方法 
} 
} 
}

在dingshi中的参数hours,minutes是要执行的方法开始的时间,这里只是要求小时和分钟,具体情况下大家可自行添加参数,但要注意修改run方法中if中的判断条件。

getData为要执行的方法,也是根据实际情况自行修改,使用时调用dingshi方法即可。

还有要注意的是为了防止浏览器崩溃,setInterval的第二个参数我定为3000毫秒,即3秒,如果大家定时要求精确到秒,这里应该改成1000,否则可能会错过你设定的时间。

一句话新闻

一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?