JavaScript中定时器setTimeout()和setInterval()的用法

JavaScript中定时器包括setTimeout()setInterval()两种函数,它们都可以让程序按照指定的时间间隔执行一定的代码。

setTimeout()函数

setTimeout()函数用于在指定的毫秒数后执行一段代码,语法如下:

setTimeout(func, delay, param1, param2, ...)

其中:

  • func: 要执行的函数
  • delay: 要延迟的毫秒数,即多少时间后执行指定的函数
  • param1param2等:传递给func函数的参数(可选)

例如,以下代码将在1秒后在浏览器控制台输出"Hello World!":

setTimeout(function() {
  console.log('Hello World!');
}, 1000);

setInterval()函数

setInterval()函数用于按照指定的时间间隔循环执行一段代码,语法如下:

setInterval(func, delay, param1, param2, ...)

其中:

  • func: 要执行的函数
  • delay: 每次执行的间隔时间,即多长时间执行一次指定的函数
  • param1param2等:传递给func函数的参数(可选)

例如,以下代码将每个1秒在浏览器控制台输出递增的数值:

var counter = 0;
var timerId = setInterval(function() {
  console.log(counter);
  counter++;
}, 1000);

注意:setInterval()函数会一直执行,除非使用clearInterval()函数停止它运行。

定时器的注意事项

  • 使用setTimeout()setInterval()时,推荐使用匿名函数作为其第一个参数,以免与其他函数冲突。
  • setTimeout()setInterval()函数在代码执行期间是异步的,会在代码执行完成后才会执行。
  • 因为所有的定时器都是独立的,所以其回调函数的执行顺序不一定与函数调用顺序一致。

示例1:使用setInterval()函数实现实时时钟

function updateTime() {
  var today = new Date();
  var hours = today.getHours();
  var minutes = today.getMinutes();
  var seconds = today.getSeconds();

  hours = ('0' + hours).slice(-2);
  minutes = ('0' + minutes).slice(-2);
  seconds = ('0' + seconds).slice(-2);

  document.getElementById('clock').innerHTML = hours + ':' + minutes + ':' + seconds;
}

var timerId = setInterval(updateTime, 1000);

示例2:使用setTimeout()函数实现倒计时

var count = 10;

function countdown() {
  console.log(count);
  count--;

  if (count >=0) {
    setTimeout(countdown, 1000);
  } else {
    console.log('Time is up!');
  }
}

countdown();

以上代码会递减输出10、9、8...0,直到输出"Time is up!"。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript中定时器setTimeout()和setInterval()的用法 - Python技术站

(0)
上一篇 2023年6月11日
下一篇 2023年6月11日

相关文章

  • 很好用的js日历算法详细代码

    如果你正在寻找一个简单易用且功能强大的js日历算法,那么你应该尝试使用这个“很好用的js日历算法”!这个算法不仅提供了完整的代码实现,还有详细的说明。在下面的步骤中,我们将详细的了解这个算法的使用方法。 步骤1: 下载日历算法代码 你可以在github上找到这个日历算法的代码,可以在你的本地环境中运行查看。你可以单击以下链接: 日历算法代码 然后,你需要从这…

    JavaScript 2023年5月27日
    00
  • Javascript开发包大全整理

    Javascript开发包大全整理 如果你是Javascript开发者,那么你一定会使用一些Javascript开发包,它们能够帮助你提高开发效率,降低开发难度。 常用的Javascript开发包 以下为常用的Javascript开发包: jQuery jQuery 是一个Javascript库,可以用于简化Javascript代码编写,提高页面操作效果。 …

    JavaScript 2023年5月18日
    00
  • javascript判断两个IP地址是否在同一个网段的实现思路

    实现IP地址判断是否在同一个网段,可以使用Javascript实现的思路如下: 首先将IP地址转换成二进制格式,方便进行比较,然后将子网掩码也转换成二进制格式。 对转换后的IP地址和子网掩码进行&(与运算),得到的结果就是该IP地址所在的网络地址。 将要比较的两个IP地址按照以上步骤进行转换得到两个网络地址。 比较两个网络地址是否相同,如果相同,则说…

    JavaScript 2023年6月11日
    00
  • javascript的函数、创建对象、封装、属性和方法、继承

    下面我将详细讲解JavaScript中函数、创建对象、封装、属性和方法、继承的完整攻略,并且会给出至少两个示例。 函数 函数的定义 函数是一段被封装起来的可复用代码块。在 JavaScript 中,函数可以通过 function 关键字来定义。函数定义的一般语法格式为: function functionName(param1, param2, …){ …

    JavaScript 2023年5月27日
    00
  • 关于Jackson的JSON工具类封装 JsonUtils用法

    下面是关于Jackson的JSON工具类封装JsonUtils的完整攻略: 1. 什么是Jackson库 Jackson是一个Java库,用于在Java对象和JSON格式之间进行转换。它提供了一组完整的处理JSON数据的工具,包括将Java对象序列化为JSON格式、将JSON格式反序列化为Java对象、对JSON格式进行解析和生成、支持JSON数组和XML等…

    JavaScript 2023年5月27日
    00
  • 原生JavaScrpit中异步请求Ajax实现方法

    原生JavaScript中异步请求Ajax实现方法 什么是Ajax Ajax(Asynchronous JavaScript and XML)表示一种创建快速动态网页的技术,可以在不重新加载整个页面的情况下更新部分内容。通过Ajax,可以在网页中使用JavaScript实现异步数据请求和数据处理,从而提高用户体验效果。 原生JavaScript实现Ajax请…

    JavaScript 2023年6月11日
    00
  • JavaScript如何获取到导航条中HTTP信息

    要获取网站的HTTP信息,可以通过JavaScript中的内置对象window对象来获取。具体的方法包括以下几个步骤: 1.使用window.location对象获取当前页面的URL地址; 2.通过获取到的URL地址字符串,使用location对象的属性来获取端口、协议、主机名等HTTP信息。 以下是用代码实现上述步骤的示例: // 获取当前页面的URL地址…

    JavaScript 2023年6月11日
    00
  • 奉献给JavaScript初学者的编写开发的七个细节

    奉献给JavaScript初学者的编写开发的七个细节攻略 在编写JavaScript代码时,细节是非常重要的。这篇文章将向初学者介绍七个在JavaScript编写过程中需要注意的细节。 1.使用严格模式 使用”use strict”;来启用JavaScript的严格模式。这样做会让代码更加健壮,可以避免一些常见的错误,例如声明未使用的变量等。 示例: &qu…

    JavaScript 2023年5月18日
    00
合作推广
合作推广
分享本页
返回顶部