失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > js定时器每天固定时间执行任务

js定时器每天固定时间执行任务

时间:2018-11-08 20:52:47

相关推荐

js定时器每天固定时间执行任务

需求:在每天的固定时间执行任务,例如每天早上08:00起床,09:00刷牙,固定时间执行固定的任务

首先,定义一个方法,在方法内接收四个参数,一个参数是接收间隔的天数,第二个参数是接收具体某个时间点,第三个参数是决定是否在启动服务时立即执行一次,第四个参数是一个执行的方法,即要定时执行的逻辑。当然,这前三个参数将定义在一个对象中,实际传入一个对象和一个函数作为参数就可以,这样整个对象可以作为配置参数。

timeoutFunc(config, func) {config.runNow && func()let nowTime = new Date().getTime()let timePoints = config.time.split(':').map(i => parseInt(i))let recent = new Date().setHours(...timePoints)recent >= nowTime || (recent += 24 * 3600000 )setTimeout(() => {func()setInterval(func, config.interval * 3600000 )}, recent - nowTime)}

config:{//参数的说明interval: 1, //间隔天数,间隔为整数runNow: false, //是否立即运行time: "14:00:00" //执行的时间点 时在0~23之间}

func参数是要执行的方法。

如果需要多个时间点可以调用多次。

转载地址/u014789022/article/details/85119677

如果觉得《js定时器每天固定时间执行任务》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。