必威体育Betway必威体育官网
当前位置:首页 > IT技术

JS设置定时器和清除定时器

时间:2019-08-21 20:11:03来源:IT技术作者:seo实验室小编阅读:85次「手机版」
 

定时

JS设置定时器和清除定时器

 在做项目中难免会碰到需要实时刷新,动画依次出现等等需求,这时候就需要定时器登上我们的代码舞台了,所以今天我们就先来了解一下js定时器的设置和清除吧。

  • 一、启用定时器

 window对象提供了两个方法来实现定时器的效果,分别是window.settimeout()和window.setInterval。其中前者可以使一段代码在指定时间后运行;而后者则可以使一段代码每过指定时间就运行一次。它们的原型如下:

 window.setTimeout(code,millisec);

 window.setInterval(code,millisec);

 其中,code可以是用引号括起来的一段代码,也可以是一个函数名,到了指定的时间,系统便会自动调用该函数,当使用函数名作为调用句柄时,不能带有任何参数;而使用字符串时,则可以在其中写入要传递的参数。两个方法中的第二个参数是millisec,表示延时或者重复执行的毫秒数。

具体写法如下

  • 函数名,不带参数

setTimeout (test,1000);           //1秒后执行

字符串,可以执行的代码

setTimeout ('test()',1000);       //1秒后执行

  • 匿名函数

setTimeout (function(){},1000);   //1秒后执行

注:setInterval的用法与setTimeout一样

  • 调用函数,带参数

setTimeout ('test(参数)',1000);      //1秒后执行

注:如果不小心写成了setTimeout (test(参数),1000);test方法就会立即执行哦。

DEMO代码:

执行结果:

二、清除定时器

 由于定时器在调用时,都会返回一个整形的数字,该数字代表定时器的序号,即第多少个定时器,所以定时器的清除要借助于这个返回的数字。

 定时器清除的方法:clearTimeout(obj)和clearinterval(obj)。

 要清除定时器,就必须在用定时器的时候,定义一个变量来记录定时器的返回值。如下:

//setTimeout 1000ms后执行1次
var test1 = setTimeout(function(){
    //your codes
},1000);
 
//setInterval 每隔1000ms执行一次
var test2 = setInterval(function(){
   //your codes
},1000)
 
//清除Timeout的定时器,传入变量名(创建Timeout定时器时定义的变量名)
clearTimeout(test1);
 
//清除Interval的定时器,传入变量名(创建Interval定时器时定义的变量名)
clearInterval(test2);

 注:有时候在写的时候,还会习惯将清空的定时器的变量置空,这样写既可以释放内存,也可以便于后边代码的判断。

原文链接:https://www.h5anli.com/articles/201705/setimeone.html

相关阅读

JS中的innerHTML,innerText,value的区别

一、区别 innerHTML 在控件中加html代码 ,就是设置一个元素里面的HTML,标签对文本信息有效。 innerTEXT 打印标签之间的纯文本

【js】根据出生日期,计算周岁年龄

/*根据出生日期算出年龄*/ function jsGetAge(strBirthday) { var returnAge; var strBirthdayArr = st

flexible.js源码解析

(function flexible (window, document) { // 获取页面root根元素 html // 跟 document.body 获取的是 页面的 body 元素 v

JS学习笔记 location.href和location.replace的大致

今天学校的外聘老师告诉我们,公司开发过程中,因为新手的一些误操作造成了许多问题,举个例子,在项目中 比如要购买一件商品 ,并且有一

什么是jsp

1. 什么是jspJSP是Java Server Page的缩写,是由Sun公司倡导,许多公司参与,于1999年推出的一种Web服务设计标准。JSP已经成为开发动态

分享到:

栏目导航

推荐阅读

热门阅读