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 调试利器 Firebug使用详解六
Jul 05 Javascript
js跟随滚动条滚动浮动代码
Dec 31 Javascript
jquery获取复选框被选中的值
Apr 10 Javascript
jQuery插件开发精品教程让你的jQuery提升一个台阶
Jan 27 Javascript
JS获取鼠标选中的文字
Aug 10 Javascript
jquery结合html实现中英文页面切换
Nov 29 Javascript
js实现点击按钮弹出上传文件的窗口
Dec 23 Javascript
bootstrap制作jsp页面(根据值让table显示选中)
Jan 05 Javascript
用js实现每隔一秒刷新时间的实例(含年月日时分秒)
Oct 25 Javascript
微信小程序表单验证form提交错误提示效果
Jun 19 Javascript
vue+element树组件 实现树懒加载的过程详解
Oct 21 Javascript
一百多行代码实现react拖拽hooks
Mar 23 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
overlord人气高涨,却被菲利普频繁举报,第四季很难在国内上映
2020/05/06 日漫
缓存技术详谈―php
2006/12/14 PHP
php 设计模式之 单例模式
2008/12/19 PHP
利用浏览器的Javascript控制台调试PHP程序
2014/01/08 PHP
PHP微信刮刮卡 附微信接口
2016/07/22 PHP
PHP生成推广海报的方法分享
2018/04/22 PHP
PHP实现的多维数组去重操作示例
2018/07/21 PHP
PHP检查端口是否可以被绑定的方法示例
2018/08/09 PHP
PHP应用跨时区功能的实现方法
2019/03/21 PHP
不用写JS也能使用EXTJS视频演示
2008/12/29 Javascript
简介JavaScript中的getUTCFullYear()方法的使用
2015/06/10 Javascript
jQuery 遍历函数详解
2015/07/05 Javascript
jQuery原生的动画效果
2015/07/10 Javascript
解决node.js安装包失败的几种方法
2016/09/02 Javascript
详细总结Javascript中的焦点管理
2016/09/17 Javascript
Angular4如何自定义首屏的加载动画详解
2017/07/26 Javascript
关于vue-router的那些事儿
2018/05/23 Javascript
基于JavaScript实现每日签到打卡轨迹功能
2018/11/29 Javascript
微信小程序canvas.drawImage完全显示图片问题的解决
2018/11/30 Javascript
富文本编辑器vue2-editor实现全屏功能
2019/05/26 Javascript
uni-app使用countdown插件实现倒计时
2020/11/01 Javascript
python处理cookie详解
2014/02/07 Python
Python中Django框架下的staticfiles使用简介
2015/05/30 Python
Python使用sorted排序的方法小结
2017/07/28 Python
Python实现输出某区间范围内全部素数的方法
2018/05/02 Python
python redis连接 有序集合去重的代码
2019/08/04 Python
tensorflow使用CNN分析mnist手写体数字数据集
2020/06/17 Python
浅谈CSS3 box-sizing 属性 有趣的盒模型
2019/04/02 HTML / CSS
网上商城创业计划书范文
2014/01/31 职场文书
市政工程技术专业自荐书
2014/07/06 职场文书
师德师风自查总结
2014/10/14 职场文书
文明班级申报材料
2014/12/24 职场文书
汽车销售助理岗位职责
2015/04/14 职场文书
JavaScript中关于预编译、作用域链和闭包的理解
2021/03/31 Javascript
jQuery ajax - getScript() 方法和getJSON方法
2021/05/14 jQuery
Python简易开发之制作计算器
2022/04/28 Python