JS定时器使用,定时定点,固定时刻,循环执行详解


Posted in Javascript onMay 31, 2016

本文概述:本文主要介绍通过JS实现定时定点执行,在某一个固定时刻执行某个函数的方法。比如说在下一个整点执行,在每一个整点执行,每隔10分钟定时执行的方法。

JavaScript中有两个定时器方法:setTimeout()和setInterval()。

这两个方法都可以用来实现在一个固定时间段之后去执行JavaScript。实际上,setTimeout和setInterval的语法相同。它们都有两个参数,一个是将要执行的代码字符串,或者函数名,还有一个是以毫秒为单位的时间间隔,当过了那个时间段之后就将执行那段代码。

不过这两个函数还是有区别的:

① setInterval()会多次执行要定时执行的代码或函数。经过了那个固定的时间间隔,它还会自动重复执行代码。

② setTimeout()只会执行一次那段代码或者指定的函数。

1.循环执行

下面的JS语句实现的是每过十分钟执行一次circulateExecute()方法。

//循环执行,每十分钟一次。10分钟后第一次执行。
setInterval("circulateExecute();",10*60*1000);//10分钟执行一次

2.下一个整点,或者某个时刻定点执行

以下javascript代码实现的是实现在当前时刻的下一个整点定点执行nextIntegralPointAfterLogin()方法。

var date = new Date();//现在时刻
var dateIntegralPoint = new Date();//用户登录时刻的下一个整点,也可以设置成某一个固定时刻
dateIntegralPoint.setHours(date.getHours()+1);//小时数增加1
dateIntegralPoint.setMinutes(0);
dateIntegralPoint.setSeconds(0);
setTimeout("nextIntegralPointAfterLogin();",dateIntegralPoint-date);//用户登录后的下一个整点执行。

3.每一个整点定点执行

通过上面介绍的在下一个整点执行nextIntegralPointAfterLogin()函数后,为了实现在每一个整点都执行某函数,可以在nextIntegralPointAfterLogin()函数中写上以下代码。

function nextIntegralPointAfterLogin(){

     IntegralPointExecute();//在整点执行的函数,在每个整点都调用该函数
setInterval("IntegralPointExecute();",60*60*1000);//一个小时执行一次,那么下一个整点,下下一个整点都会执行

}
注意:由于JS计算的误差以及执行过程中需要一定的时间,所以上述定时定点执行方法可能会有一两秒的误差。

以上这篇JS定时器使用,定时定点,固定时刻,循环执行详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS对URL字符串进行编码/解码分析
Oct 25 Javascript
web css实现整站样式互相切换
Oct 29 Javascript
JQuery中DOM加载与事件执行实例分析
Jun 13 Javascript
浅谈javascript原型链与继承
Jul 13 Javascript
纯js实现的积木(div层)拖动功能示例
Jul 19 Javascript
bootstrap treeview 扩展addNode方法动态添加子节点的方法
Nov 21 Javascript
Vue自定义指令实现checkbox全选功能的方法
Feb 28 Javascript
vuex如何重置所有state(可定制)
Jan 17 Javascript
解决layer 关闭当前弹窗 关闭遮罩层 input值获取不到的问题
Sep 25 Javascript
JS关闭子窗口并且刷新上一个窗口的实现示例
Mar 10 Javascript
JS Canvas接口和动画效果大全
Apr 29 Javascript
vue中控制mock在开发环境使用,在生产环境禁用方式
Apr 06 Vue.js
BootStrap创建响应式导航条实例代码
May 31 #Javascript
浅谈js中的延迟执行和定时执行
May 31 #Javascript
温习Javascript基础语法之词法结构
May 31 #Javascript
jQuery文字横向滚动效果的实现代码
May 31 #Javascript
Javascript实现跑马灯效果的简单实例
May 31 #Javascript
javascript实现简易计算器的代码
May 31 #Javascript
javascript实现任务栏消息提示的简单实例
May 31 #Javascript
You might like
PHP新手上路(十四)
2006/10/09 PHP
PHP实现用户认证及管理完全源码
2007/03/11 PHP
PHP生成sitemap.xml地图函数
2013/11/13 PHP
PHP实现的比较完善的购物车类
2014/12/02 PHP
PHP里的单例类写法实例
2015/06/25 PHP
无需数据库在线投票调查php代码
2016/07/20 PHP
PHP7如何开启Opcode打造强悍性能详解
2018/05/11 PHP
laravel5.6 框架邮件队列database驱动简单demo示例
2020/01/26 PHP
Mootools 1.2教程(3) 数组使用简介
2009/09/14 Javascript
JavaScript QueryString解析类代码
2010/01/17 Javascript
js获取html参数及向swf传递参数应用介绍
2013/02/18 Javascript
jQuery通用的全局遍历方法$.each()用法实例
2016/07/04 Javascript
JavaScript制作简单分页插件
2016/09/11 Javascript
JSON 必知必会 观后记
2016/10/27 Javascript
nodejs入门教程五:连接数据库的方法分析
2017/04/24 NodeJs
vue服务端渲染的实例代码
2017/08/28 Javascript
layui添加动态菜单与选项卡
2019/07/26 Javascript
JS实现canvas简单小画板功能
2020/06/23 Javascript
keep-Alive搭配vue-router实现缓存页面效果的示例代码
2020/06/24 Javascript
如何通过vscode运行调试javascript代码
2020/07/24 Javascript
Cython 三分钟入门教程
2009/09/17 Python
python处理文本文件并生成指定格式的文件
2014/07/31 Python
python中self原理实例分析
2015/04/30 Python
python调用百度语音识别实现大音频文件语音识别功能
2018/08/30 Python
python3.4控制用户输入与输出的方法
2018/10/17 Python
python对csv文件追加写入列的方法
2019/08/01 Python
python入门之井字棋小游戏
2020/03/05 Python
Python内存泄漏和内存溢出的解决方案
2020/09/26 Python
完美解决torch.cuda.is_available()一直返回False的玄学方法
2021/02/06 Python
利用Opencv实现图片的油画特效实例
2021/02/28 Python
Waterford美国官网:爱尔兰水晶制品品牌
2017/04/26 全球购物
澳大利亚在线划船、露营和钓鱼商店:BCF Australia
2020/03/22 全球购物
民事起诉状范文
2015/05/19 职场文书
大学生军训感言
2015/08/01 职场文书
公司人事管理制度
2015/08/05 职场文书
少先队中队工作总结
2015/08/14 职场文书