JavaScript定时器setTimeout()和setInterval()详解

yizhihongxing

JavaScript定时器setTimeout()和setInterval()详解

在前端开发中,经常会用到定时器来控制代码的执行时间。而JavaScript中提供了两个定时器函数setTimeout()和setInterval(),本文详细讲解它们的用法及区别。

setTimeout()

setTimeout()函数可以让指定的代码在指定的时间后执行一次。它的语法如下:

setTimeout(function, milliseconds);

其中,function是要执行的代码,毫秒数(milliseconds)是指定的时间。如下面的例子,代码将在1000毫秒(1秒)后执行:

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

需要注意的是,setTimeout()函数只会执行一次。如果需要多次执行,可以结合递归调用实现。

setInterval()

setInterval()函数可以让指定的代码每隔一定时间执行一次。它的语法如下:

setInterval(function, milliseconds);

其中,function是要执行的代码,毫秒数(milliseconds)是指定的时间。如下面的例子,代码将每隔1000毫秒(1秒)执行一次:

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

需要注意的是,setInterval()函数会持续执行,直到调用clearInterval()函数停止为止。如下面的例子,代码将在5秒后停止执行:

var intervalId = setInterval(function(){
    console.log('Hello setInterval!'); 
}, 1000);

setTimeout(function(){
    clearInterval(intervalId);
}, 5000);

在上面的代码中,setInterval()函数每隔1秒执行一次,而使用setTimeout()函数调用clearInterval()函数可以让它在5秒后停止执行。

小结

setTimeout()和setInterval()函数是JavaScript中常用的定时器函数。setTimeout()函数让代码在一定时间后执行一次,而setInterval()函数让代码每隔一定时间执行一次。需要注意的是,setInterval()函数需要使用clearInterval()函数停止执行,否则它将会一直执行下去。

示例说明

示例1

以下代码演示如何使用setTimeout函数实现3秒后输出"Hello setTimeout!"并且输出“Hello setTimeout!”的递归调用,不停输出。

setTimeout(function(){
    console.log('Hello setTimeout!'); 
    setTimeout(arguments.callee,3000);
},3000);

示例2

以下代码演示如何使用setInterval函数实现每隔1秒输出“Hello setInterval!”并且在5秒后停止输出。

var intervalId = setInterval(function(){
    console.log('Hello setInterval!'); 
}, 1000);

setTimeout(function(){
    clearInterval(intervalId);
}, 5000);

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

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

相关文章

  • JavaScript利用正则表达式替换字符串中的内容

    针对这个问题,我将从以下几个方面进行详细的讲解: 什么是正则表达式替换? JavaScript中的正则表达式 JavaScript利用正则表达式替换字符串的方法 示例说明 1. 什么是正则表达式替换? 正则表达式替换是指通过指定的正则表达式规则,在一个字符串中查找符合条件的内容并进行替换的操作。 2. JavaScript中的正则表达式 在JavaScrip…

    JavaScript 2023年6月10日
    00
  • JS日期控件My97DatePicker基本用法

    以下是JS日期控件My97DatePicker基本用法的完整攻略。 一、My97DatePicker是什么 My97DatePicker是一款轻便好用的日期控件,可以自由定制样式,并支持所有主流的浏览器。 二、基本用法 1. 引入My97DatePicker 在文档的标签中插入以下代码,即可引入My97DatePicker: <link rel=&qu…

    JavaScript 2023年5月27日
    00
  • Dom-api MutationObserver使用方法详解

    Dom-api MutationObserver使用方法详解 概述 MutationObserver是Web API中的一个对象,用于监视DOM树中发生的变化,并提供回调函数,用于在变化发生时执行相应逻辑。 基本用法 MutationObserver的基本用法如下 // 创建一个观察器实例并指定回调函数 const observer = new Mutati…

    JavaScript 2023年6月10日
    00
  • flash javascript之间的通讯方法小结

    Flash JavaScript之间的通讯方法小结 在开发网络应用程序的过程中,我们常常需要使用Flash和JavaScript之间的通讯。下面是一些常见的通讯方法。 1. ExternalInterface ExternalInterface 类是Flash和JavaScript之间通讯的最基本的方法,它提供了一个双向的接口,可以在Flash和JavaSc…

    JavaScript 2023年6月11日
    00
  • JavaScript中的高级函数

    JavaScript中的高级函数是指可以作为参数传递给其他函数或者作为返回值的函数。它们可以帮助我们更优雅地处理数据,并且能够让我们的代码更加简洁易懂。在本文中,我们将深入探讨这些高级函数,并且会通过示例进行讲解。 什么是高级函数 在JavaScript中,函数是一等公民。这意味着函数可以像其他类型的值一样被传递、赋值或者作为函数的返回值。高级函数是一类特殊…

    JavaScript 2023年6月10日
    00
  • ajax请求json数据案例详解

    我们来详细讲解“ajax请求json数据案例详解”的完整攻略。 1. 什么是 AJAX? AJAX 是一种异步表现模式,即浏览器无需刷新整个页面,利用 XMLHTTPREQUEST 对象向服务器异步请求数据,然后通过 JavaScript 动态改变网页,异步更新网页部分内容。 2. AJAX 请求 JSON 数据 JSON 是一种轻量级的数据传输格式,常用于…

    JavaScript 2023年5月27日
    00
  • Ionic2系列之使用DeepLinker实现指定页面URL

    关于“Ionic2系列之使用DeepLinker实现指定页面URL”的完整攻略,我们可以进行如下的讲解: 概述 在Ionic2应用中,使用DeepLinker可以轻松地实现URL指定页面跳转的效果。DeepLinker可以将页面和URL映射起来,这样就能够通过URL来精确地打开指定的页面了。 详细步骤 下面我们将会依次介绍使用DeepLinker实现指定页面…

    JavaScript 2023年6月11日
    00
  • js实现class样式的修改、添加及删除的方法

    Javascript可以通过操作DOM元素来实现对class样式的修改、添加及删除。 修改class样式的方法 要修改DOM元素的class属性,可以使用classList属性,该属性包含了添加、删除和切换class的方法。 const element = document.querySelector(".target-element")…

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