setTimeout与setInterval的区别浅析


Posted in Javascript onMarch 23, 2019

前言

在制作网页动态效果时,一定会遇到某些需求,要求某段程序等待多时时间后再开始执行,就像在我们的生活中一样,待会儿再开始做一件事。在JavaScript中主要通过定时器实现此类需求,本文将对定时器做一个概括,正对setTimeout()做一个详细用法总结。

setTimeout()定义和用法

首先让我们看一看W3C上关于setTimeout方法的介绍

定义

setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。

语法

setTimeout(code,millisec)

参数:

code:必需。要调用的函数后要执行的 JavaScript 代码串。

millisec:   必需。在执行代码前需等待的毫秒数。

提示

setTimeout() 只执行 code 一次。如果要多次调用,请使用 setInterval() 或者让 code 自身再次调用 setTimeout()。

代码

function hello(){
alert("hello");
}
//使用方法名字执行方法
var t1 = window.setTimeout(hello,1000);
var t2 = window.setTimeout("hello()",3000);//使用字符串执行方法
window.clearTimeout(t1);//清除定时器

setInterval()定义和用法

代码

//实时刷新时间单位为毫秒
setInterval('refreshQuery()',8000); 
/* 刷新查询 */
function refreshQuery(){
 $("#mainTable").datagrid('reload',null);
}

业务场景

  • setTimeout用于延迟执行某方法或功能
  • setInterval则一般用于刷新表单,对于一些表单的假实时指定时间刷新同步

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
围观tangram js库
Dec 28 Javascript
JQuery自适应IFrame高度(支持嵌套 兼容IE,ff,safafi,chrome)
Mar 28 Javascript
JavaScript包装对象使用详解
Jul 09 Javascript
JavaScript函数柯里化原理与用法分析
Mar 31 Javascript
js匿名函数使用&传参(实例)
Sep 08 Javascript
Vue渲染函数详解
Sep 15 Javascript
JS 音频可视化插件Wavesurfer.js的使用教程
Oct 31 Javascript
Windows下支持自动更新的Electron应用脚手架的方法
Dec 24 Javascript
vue中created和mounted的区别浅析
Aug 13 Javascript
vue实现axios图片上传功能
Aug 20 Javascript
javascript实现拖拽碰撞检测
Mar 12 Javascript
Vue自定义多选组件使用详解
Sep 08 Javascript
如何通过setTimeout理解JS运行机制详解
Mar 23 #Javascript
vue中axios请求的封装实例代码
Mar 23 #Javascript
vueScroll实现移动端下拉刷新、上拉加载
Mar 22 #Javascript
浅谈Angular单元测试总结
Mar 22 #Javascript
JavaScript面试技巧之数组的一些不low操作
Mar 22 #Javascript
Vue-CLI 3.X 部署项目至生产服务器的方法
Mar 22 #Javascript
微信小程序城市选择及搜索功能的方法
Mar 22 #Javascript
You might like
使用 eAccelerator加速PHP代码的目的
2007/03/16 PHP
收藏的PHP常用函数 推荐收藏保存
2010/02/21 PHP
PHP函数addslashes和mysql_real_escape_string的区别
2014/04/22 PHP
PHP生成数组再传给js的方法
2014/08/07 PHP
百度工程师讲PHP函数的实现原理及性能分析(一)
2015/05/13 PHP
js prototype 格式化数字 By shawl.qiu
2007/04/02 Javascript
jquery使用append(content)方法注意事项分享
2014/01/06 Javascript
js闭包实例汇总
2014/11/09 Javascript
Javascript非构造函数的继承
2015/04/27 Javascript
高性能JavaScript DOM编程(1)
2015/08/11 Javascript
Javascript函数式编程语言
2015/10/11 Javascript
关于jQuery EasyUI 中刷新Tab选项卡后一个页面变形的解决方法
2017/03/02 Javascript
Mac系统下Webstorm快捷键整理大全
2017/05/28 Javascript
vue-router2.0 组件之间传参及获取动态参数的方法
2017/11/10 Javascript
在vscode里使用.vue代码模板的方法
2018/04/28 Javascript
深入理解Promise.all
2018/08/08 Javascript
element vue Array数组和Map对象的添加与删除操作
2018/11/14 Javascript
[01:00:17]DOTA2-DPC中国联赛 正赛 SAG vs Dynasty BO3 第二场 1月25日
2021/03/11 DOTA
Python 初始化多维数组代码
2008/09/06 Python
python多进程操作实例
2014/11/21 Python
以911新闻为例演示Python实现数据可视化的教程
2015/04/23 Python
qpython3 读取安卓lastpass Cookies
2016/06/19 Python
Python实现动态图解析、合成与倒放
2018/01/18 Python
使用python批量化音乐文件格式转换的实例
2019/01/09 Python
Python Django 实现简单注册功能过程详解
2019/07/29 Python
基于Python的图像数据增强Data Augmentation解析
2019/08/13 Python
python处理document文档保留原样式
2019/09/23 Python
使用celery和Django处理异步任务的流程分析
2020/02/19 Python
tensorflow安装成功import tensorflow 出现问题
2020/04/16 Python
解决安装新版PyQt5、PyQT5-tool后打不开并Designer.exe提示no Qt platform plugin的问题
2020/04/24 Python
python实现将中文日期转换为数字日期
2020/07/14 Python
Melijoe时尚童装德国官网:Melijoe德国
2016/09/03 全球购物
第二层交换机和路由器的区别?第三层交换机和路由器的区别?
2013/05/23 面试题
寻找成龙观后感
2015/06/12 职场文书
使用pycharm运行flask应用程序的详细教程
2021/06/07 Python
详解MongoDB排序时内存大小限制与创建索引的注意事项
2022/05/06 MongoDB