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 相关文章推荐
javascript测试题练习代码
Oct 10 Javascript
javascript中强制执行toString()具体实现
Apr 27 Javascript
jquery更换文章内容与改变字体大小代码
Sep 30 Javascript
JavaScript学习笔记之定时器
Jan 22 Javascript
使用Node.js实现HTTP 206内容分片的教程
Jun 23 Javascript
IE10中flexigrid无法显示数据的解决方法
Jul 26 Javascript
JS中对Cookie的操作详解
Aug 05 Javascript
AngularJS 中的Promise --- $q服务详解
Sep 14 Javascript
JS时间控制实现动态效果的实例讲解
Jul 31 Javascript
vue用addRoutes实现动态路由的示例
Sep 15 Javascript
浅谈Vue数据响应
Nov 05 Javascript
vue render函数动态加载img的src路径操作
Oct 26 Javascript
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+jQuery+Ajax实现点赞效果的方法(附源码下载)
2020/07/21 PHP
几个高效,简洁的字符处理函数
2007/04/12 Javascript
JS array 数组详解
2009/03/22 Javascript
jquery实现的让超出显示范围外的导航自动固定屏幕最顶上
2011/09/22 Javascript
THREE.JS入门教程(4)创建粒子系统
2013/01/24 Javascript
判断js对象是否拥有某一个属性的js代码
2013/08/16 Javascript
jtable列中自定义button示例代码
2013/11/21 Javascript
一个JavaScript的求爱小特效
2014/05/09 Javascript
NodeJS学习笔记之Connect中间件模块(二)
2015/01/27 NodeJs
js实现C#的StringBuilder效果完整实例
2015/12/22 Javascript
正则表达式,替换所有HTML标签的简单实例
2016/11/28 Javascript
js实现点击按钮弹出上传文件的窗口
2016/12/23 Javascript
React利用插件和不用插件实现双向绑定的方法详解
2017/07/03 Javascript
详解axios 全攻略之基本介绍与使用(GET 与 POST)
2017/09/15 Javascript
移动端网页开发调试神器Eruda的介绍与使用技巧
2017/10/30 Javascript
基于zTree树形菜单的使用实例
2017/12/25 Javascript
jQuery 防止相同的事件快速重复触发方法
2018/02/08 jQuery
js实现延迟加载的几种方法详解
2019/01/19 Javascript
VuePress 静态网站生成方法步骤
2019/02/14 Javascript
webpack4 SplitChunks实现代码分隔详解
2019/05/23 Javascript
基于vue实现一个禅道主页拖拽效果
2019/05/27 Javascript
layui关闭层级、简单监听的实例
2019/09/06 Javascript
浅谈laytpl 模板空值显示null的解决方法及简单的js表达式
2019/09/19 Javascript
[06:25]DOTA2英雄梦之声_第17期_大地之灵
2014/06/20 DOTA
python基础教程之基本数据类型和变量声明介绍
2014/08/29 Python
Python中模块与包有相同名字的处理方法
2017/05/05 Python
R vs. Python 数据分析中谁与争锋?
2017/10/18 Python
python中的句柄操作的方法示例
2019/06/20 Python
Python中的self用法详解
2019/08/06 Python
一行python实现树形结构的方法
2019/08/09 Python
求职自荐书范文
2013/12/04 职场文书
机械电子工程专业自荐书
2014/06/10 职场文书
法定代表人资格证明书
2014/09/11 职场文书
安全保证书
2015/01/16 职场文书
Oracle安装TNS_ADMIN环境变量设置参考
2021/11/01 Oracle
Python实现归一化算法详情
2022/03/18 Python