JS定时器整理(执行一次、重复执行)

在JavaScript中,有两个关于定时器的专用函数,分别为:

  • 倒计定时器:timename = setTimeout("function();", delaytime);
  • 循环定时器:timename = setInterval("function();", delaytime);

第一个参数function()是定时器触发时要执行的动作,可以是一个函数,也可以是几个函数,函数间用;隔开即可

比如要弹出两个警告窗口,便可将function();换成alert('第一个警告窗口!');alert('第二个警告窗口!');

而第二个参数delaytime则是间隔的时间,以毫秒为单位,即填写5000,就表示5秒钟

倒计时定时器是在指定时间到达后触发事件,而循环定时器就是在间隔时间到来时反复触发事件,两者的区别在于:前者只是作用一次,而后者则不停地作用。即setInterval为自动重复,setTimeout不会重复

clearTimeout(对象) 清除已设置的setTimeout对象;clearInterval(对象) 清除已设置的setInterval对象

两种函数的格式:

<script>
//定时器 异步运行
function hello() {
  alert("hello");
}

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

//重复执行某个方法
var t1 = window.setInterval(hello, 1000);
var t2 = window.setInterval("hello()", 3000);
//去掉定时器的方法
window.clearInterval(t1);
</script>
上一篇 JS遍历对象、map及数组
下一篇 jQuery模拟form表单提交
目录
文章列表
1 Android 8.0 及以上集成友盟推送采坑记录
Android 8.0 及以上集成友盟推送采坑记录
2
yum No package xxx available
yum No package xxx available
3
PHP调用AWS SES服务发送邮件报403 Forbidden SignatureDoesNotMatch
PHP调用AWS SES服务发送邮件报403 Forbidden SignatureDoesNotMatch
4
Groovy代码示例 - 文件操作
Groovy代码示例 - 文件操作
5
解决vue项目ip地址无法访问的问题
解决vue项目ip地址无法访问的问题
最新评论
一位WordPress评论者
一位WordPress评论者
2月12日
您好,这是一条评论。若需要审核、编辑或删除评论,请访问仪表盘的评论界面。评论者头像来自 Gravatar。