返回顶部
首页 > 资讯 > 前端开发 > JavaScript >详解JavaScript的定时器
  • 439
分享到

详解JavaScript的定时器

2024-04-02 19:04:59 439人浏览 安东尼
摘要

目录简单介绍setInterval描述参数返回值用法setTimeout描述参数用法:取消timer在控制台使用定时器console.time(timerName)console.t

简单介绍

javascript中定时器有两个 setInterval() 与 setTimeout() 分别还有取消定时器的方法。

这都是window的对象,调用时可以省略window。这两个方法并不在 JavaScript 的规范中。

定时器方法相关方法有四种。

方法 描述
setInterval 周期性地调用一个函数(function)或者执行一段代码。
clearInterval 取消掉用setInterval设置的重复执行动作。
setTimeout 在指定的延迟时间之后调用一个函数或者执行一个代码片段。
clearTimeout 方法可取消由 setTimeout() 方法设置的 timeout。

setTimeout() setInterval()的区别是它们的执行次数不同。

注意:setTimeout() 只执行一次setInterval()是每间隔给定的时间周期性执行。

setInterval

描述

setInterval() 方法可以按照制定的周期,来重复调用一个函数或执行一个代码段。周期单位为毫秒。

setInterval() 方法如果没有被 clearInterval() 方法关闭或页面关闭,那么会一直调用下去。

setInterval的参数有多个。

第一种,如果第一个参数为代码段,那么setInterval()方法可以选填。

第二种,如果第一个参数为函数,那么setInterval()方法可以有多个参数。


let timerId = setInterval(func|code, delay, arg1, arg2, ...)

参数

参数 必/选填 描述
func | code 必填 调用的函数后要执行的函数或代码字符串
delay 必填 执行代码前所需的时间,单位为毫秒,可以不填,默认值是 0
arg1,arg2… 选填 要传入被执行函数(或代码字符串)的参数列表(IE9 以下不支持)

参数func|code 一般传入的都是函数。由于某些历史原因,支持传入代码字符串,但是不建议这样做。

返回值

返回值timeoutID是一个正整数,表示定时器的编号。这个值可以传递给clearTimeout()来取消该定时器。

用法

这是一个点击按钮,每隔一秒种,数字加一的示例;


<p id="showNum"></p>
<button onclick="timer()">点我每秒钟数字加一</button>
 <script>
  const showNum = document.getElementById("showNum");
   let timerId; // 计时器的ID
  let num = 0;
   function timer() {
    timerId = setInterval(addNum, 1000);
  }
   function addNum() {
    showNum.innerText = `${num++}`;
  }
   // 没有写停止计时器代码
</script>

setTimeout

描述

setTimeout()返回一个整数,表示定时器的编号,以后可以用来取消这个定时器。

setTimeout()允许我们将函数推迟到一段时间间隔之后再执行。


let timerId = setTimeout(func|code, delay, arg1, arg2, ...)

参数

setTimeout()参数这里和setInterval()的参数是一样的。

参数 必/选填 描述
func | code 必填 调用的函数后要执行的函数或代码字符串
delay 必填 执行代码前所需的时间,单位为毫秒,可以不填,默认值是 0
arg1,arg2… 选填 要传入被执行函数(或代码字符串)的参数列表(IE9 以下不支持)

参数func|code 一般传入的都是函数。由于某些历史原因,支持传入代码字符串,但是不建议这样做。

用法:

setTimeout()用法和 setInterval()是一样的,
不过 setTimeout() 只执行一次不同,setInterval() 是根据指定的时间周期性执行。


<p id="showNum"></p>
<button onclick="timer()">点击后,等待一秒钟数字加一</button>
 <script>
  const showNum = document.getElementById("showNum");
   let timerId;
  let num = 0;
  addNum();
   function timer() {
    timerId = setTimeout(addNum, 1000);
  }
   function addNum() {
    showNum.innerText = `${num++}`;
  }
 </script>

取消timer

clearInterval() 方法可取消由 setInterval() 设置的 timer。

clearTimeout() 方法可取消由 setTimeout() 设置的 timer。

使用方法很简单,只有一个参数,该参数timeoutID为您要取消定时器的标识符。
该ID由相应的setTimeout()或clearTimeout()调用返回.


clearInterval(intervalID);
clearTimeout(timeoutID);

注意的是setTimeout()setInterval()共用一个编号池,技术上,clearTimeout()和 clearInterval() 可以互换。但是,为了避免混淆,不要混用取消定时函数。

用法很简单


function timer() {
  timerId = setTimeout(addNum, 1000);
}
 clearTimeout(timerId); // 当代码运行到这行的时候,会取消timer所设置的定时器。

在控制台使用定时器

在浏览器控制台中也可以使用定时器

console.time(timerName)

创建一个名为name的计时器,并开始计时。

每一个计时器必须拥有唯一的名字,页面中最多能同时运行10,000个计时器。

console.timeEnd(timerName)

调用console.timeEnd(name)停止计时器并输出所耗时间(毫秒)。


console.time(timerName);
console.timeEnd(timerName);

用法

for循环99999次要多少时间示例.


console.time(name);
 let num;
for (let index = 0; index < 99999; index++) {
  num++;
}
 console.timeEnd(name);

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注编程网的更多内容!

--结束END--

本文标题: 详解JavaScript的定时器

本文链接: https://lsjlt.com/news/157736.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 详解JavaScript的定时器
    目录简单介绍setInterval描述参数返回值用法setTimeout描述参数用法:取消timer在控制台使用定时器console.time(timerName)console.t...
    99+
    2024-04-02
  • JavaScript定时器原理详解
    目录一、 setTimeout() 定时器二、停止 setTimeout() 定时器三、setInterval() 定时器四、清除setInterval() 定时器五、电子时钟案例前...
    99+
    2024-04-02
  • JavaScript 定时器详情
    目录1、简单介绍2、setInterval2.1 描述2.2 参数2.3 返回值2.4 用法3、setTimeout3.1 描述3.2 参数3.3 用法4、取消timer5、在控制台...
    99+
    2024-04-02
  • JavaScript定时器setTimeout、setInterval使用详解
    定时器:按我个人理解来说就是固定某个时间后,时间到了,就提醒我时间到了。 程序中的定时器:相当于倒计时,也相当于计时器。作用是在设定的某个时间后,执行特定的方法。 我们先来了解一下s...
    99+
    2023-05-17
    定时器settimeout 定时器 setInterval js定时器代码
  • Jmeter固定定时器的使用详解
    目录场景举例特殊说明特殊说明补充:统一随机定时器准确的吞吐量定时器常数吞吐量定时器Jmeter之固定定时器的使用 Jmeter的线程组在发送2个请求之间需要设置一个等待时间时,可以用...
    99+
    2024-04-02
  • mysql定时器event详解
    一. 事件简介     事件(event)是MySQL在相应的时刻调用的过程式数据库对象。一个事件可调用一次,也可周期性的启动,它由一个特定的线程来管理的,也就是所谓的“事件调度器”...
    99+
    2024-04-02
  • 详解TCP的四种定时器
    详解TCP的四种定时器 在TCP协议中有的时候需要定期或者按照某个算法对某个事件进行触发,那么这个时候,TCP协议是使用定时器进行实现的。在TCP中,会有四种定时器: (1)重传定时器 (2)坚持定时...
    99+
    2022-06-04
    定时器 四种 详解
  • Java中的定时器Timer详解
    目录总结简单来说,定时器就相当于一个“闹钟”,给定时器设定一个任务,约定这个任务在xxx时间之后执行~ Timer类提供了一个核心接口,schedule(安排) 指定一个任...
    99+
    2024-04-02
  • Flowable中定时器的玩法详解
    目录1. 流程定义定时激活2. 流程实例定时挂起3. 定时任务执行过程1. 流程定义定时激活 在之前松哥给小伙伴们介绍流程定义的时候,流程都是定义好之后立马就激活了,其实在流程定义的...
    99+
    2022-11-13
    Flowable定时器使用 Flowable定时器
  • golangcroncli定时器命令详解
    目录定时器命令格式定时执行命令单个命令多个命令windows系统下的使用特殊情况处理定时命令执行出现panic定时命令执行时间过长其他定时器是执行任务时的常用功能,配置系统的定时任务...
    99+
    2024-04-02
  • 详解Python的多线程定时器threading.Timer
    threading.Timer 一次timer只生效一次,不会反复循环,如果实现循环触发,代码如下: import time import threading def createT...
    99+
    2024-04-02
  • javascript的定时器有哪几种
    本篇内容介绍了“javascript的定时器有哪几种”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2024-04-02
  • javascript定时器清除的方法
    这篇文章主要介绍了javascript定时器清除的方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。JavaScript的特点1.JavaScript主要用来向HTML页面添...
    99+
    2023-06-14
  • 什么是JavaScript 定时器
    这期内容当中小编将会给大家带来有关什么是JavaScript 定时器,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1、简单介绍在JavaScript中定时器有两个 setInterval() 与 setT...
    99+
    2023-06-25
  • 详解JavaScript中的this硬绑定
    目录一、this显示绑定二、硬绑定一、this显示绑定 this显示绑定,顾名思义,它有别于this的隐式绑定,而隐式绑定必须要求一个对象内部包含一个指向某个函数的属性(或者某个对象...
    99+
    2024-04-02
  • 闭包中的定时器:JavaScript 中的时间扭曲器
    闭包概述 闭包是一个函数,它可以访问和操作其创建范围之外的变量。这使得闭包能够保存和管理数据,即使在创建函数的范围之外也是如此。 定时器在闭包中的作用 定时器是 JavaScript 中用于安排在指定时间间隔后执行函数的机制。将定时器与闭...
    99+
    2024-03-09
    引言 闭包中的定时器在 JavaScript 中扮演着至关重要的角色 为处理异步操作和创建延迟效果提供了强大的工具。理解其工作原理对于任何 JavaScript 开发人员来说都至关重要。
  • JavaScript中的定时器怎么创建
    这篇文章主要介绍了JavaScript中的定时器怎么创建的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇JavaScript中的定时器怎么创建文章都会有所收获,下面我们一起来看看...
    99+
    2024-04-02
  • Javascript中定时器的示例分析
    小编给大家分享一下Javascript中定时器的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!Javascript中有两种定时器,分别是setInterval()、setTimeout(),两者都是定时器,但是二者...
    99+
    2023-06-14
  • Java定时任务详解
    定时任务在项目中经常会使用到,本文主要根据博主自己使用定时的经验分如下几点介绍定时任务:1、Quartz定时任务简介及Spring配置Quartz定时任务2、SchedulerFactory对定时任务进行增删改查3、总结Quartz定时任务...
    99+
    2023-05-31
    java 定时任务 ava
  • JavaScript 中的 this 绑定规则详解
    目录前言1. 关于 this 的简单介绍2. 为什么使用 this?3. 关于this 的常见的误解4. this 的绑定规则4.1 默认绑定4.2 隐式绑定4.3 显式绑定4.4 ...
    99+
    2023-02-14
    JavaScript中的this绑定规则 JavaScript中的this关键字 JS中this的4种绑定规则
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作