js超时调用setTimeout和间歇调用setInterval实例分析

yizhihongxing

JS超时调用setTimeout和间歇调用setInterval实例分析

setTimeout函数

setTimeout函数是JS中的一个高级函数,可以实现代码的延时执行。

语法:

setTimeout(function, delay, param1, param2, ...)
  • function:必选参数,是需要延时执行的函数或一个字符串经过编译生成的JS代码
  • delay:必选参数,是延时时间,单位是毫秒
  • param1,param2...:可选参数,是指向要传递给函数的参数,最多可以传递个数个函数的参数,参数可以是任何类型

使用示例:

// 延时1秒后,弹出“hello world”
setTimeout(function(){
    alert("hello world");
}, 1000);

setInterval函数

setInterval函数是JS中的一个高级函数,可以实现代码的循环定时执行。

语法:

setInterval(function, delay, param1, param2, ...)
  • function:必选参数,是需要循环定时执行的函数或一个字符串经过编译生成的JS代码
  • delay:必选参数,是定时执行的时间间隔,单位是毫秒
  • param1,param2...:可选参数,是指向要传递给函数的参数,最多可以传递个数个函数的参数,参数可以是任何类型

使用示例:

// 每隔1秒弹出“hello world”
setInterval(function(){
    alert("hello world");
}, 1000);

setTimeout与setInterval的差异

setTimeout和setInterval两个函数虽然都可以实现延时执行JS代码,但是它们在实现方式上有差别。

  • setTimeout函数只执行一次,执行完毕后结束;
  • setInterval函数则可以在指定的时间间隔内无限循环执行。

注意事项

使用setTimeout或setInterval函数时,需要注意以下点:

  1. 如果设置的时间间隔(delay)小于4毫秒,那么函数可能会被延迟执行或者忽略执行;
  2. 如果设置了系统休眠模式,则setTimeout和setInterval函数可能会被暂停执行,直到系统重新被唤醒;
  3. 当页面不处于激活状态(例如被最小化、后台运行等),setInterval函数会被暂停执行。

示例说明

示例一:倒计时

function countDown(){
    var countdownDom = document.getElementById('countdown');
    var time = parseInt(countdownDom.innerHTML);
    time -= 1;
    if(time <= 0){
        clearTimeout(timerId);
        countdownDom.innerHTML = "倒计时结束";
    }else {
        countdownDom.innerHTML = time;
    }
}

// 倒计时开始
var timerId = setInterval(countDown, 1000);

上述代码实现了一个简单的倒计时效果,每隔1秒钟更新一次倒计时数字,当倒计时结束后,停止执行,显示倒计时结束。

示例二:动画效果

var square = document.getElementById('square');
var step = 1;
function animation(){
    if(step < 100){
        square.style.left = (step++) + "px";
        setTimeout(animation, 10);
    }
}

// 动画效果开始
animation();

上述代码实现了一个简单的动画效果,将一个div元素从左向右移动,每10毫秒移动一个像素,当移动到100像素后,停止执行。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js超时调用setTimeout和间歇调用setInterval实例分析 - Python技术站

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

相关文章

  • javascript 闭包

    JavaScript 闭包(Closure)是一种非常强大的特性,它可以让变量保持在内存中,即使这个变量已经超出了作用域的范围。在函数式编程中,闭包是不可缺少的,因为它可以让你轻松地创建函数“模板”,并保持数据的私有和安全性。 什么是闭包? 在 JavaScript 中,每个函数都是一个闭包。闭包是指函数和创建该函数的环境的组合。简单地说,闭包就是在函数中创…

    JavaScript 2023年6月10日
    00
  • JavaScrpt中如何使用 cookie 设置查看与删除功能

    下面详细讲解如何使用JavaScript中的cookie设置查看与删除功能: 1. 什么是 cookie? cookie是一种储存在用户客户端的小型文本文件,用于存储用户数据,实现网站的状态管理。cookie一般用于记录用户的登录状态、购物车信息等。 2. 如何设置 cookie? 在JavaScript中,可以通过document.cookie来设置coo…

    JavaScript 2023年6月11日
    00
  • django admin 使用SimpleUI自定义按钮弹窗框示例

    下面是“django admin 使用SimpleUI自定义按钮弹窗框示例”的完整攻略以及其中的两个示例说明。 1. 什么是SimpleUI SimpleUI是一个漂亮的开源后台管理系统框架,提供了众多易于扩展和修改的组件和插件,能够使开发者快速开发高效的后台管理系统。 2. 使用SimpleUI自定义按钮弹窗框示例 在django admin中,我们可以利…

    JavaScript 2023年6月11日
    00
  • JavaScript实现的简单Tab点击切换功能示例

    以下是“JavaScript实现的简单Tab点击切换功能示例”的完整攻略: 理解Tab切换功能 在网页设计中,Tab切换功能是常见的交互方式,它可以在同一页面内切换不同的内容,提升用户体验。在实现Tab切换功能时,需要通过JavaScript脚本实现元素的显示和隐藏。 准备工作 在实现Tab切换功能之前,需要进行一些准备工作。其中最重要的是,需要确定需要切换…

    JavaScript 2023年6月10日
    00
  • vue.js云存储实现图片上传功能

    下面是”vue.js云存储实现图片上传功能”的完整攻略,具体内容如下: 1. 准备工作 在开始实现图片上传功能之前,我们需要进行以下准备工作: 1.1. 创建云存储账号 首先,我们需要去云存储厂商处创建一个账号。以阿里云为例,我们可以参考阿里云对象存储 OSS 快速入门文档进行操作。 1.2. 引入第三方工具库 在实现图片上传功能时,我们通常会使用一些第三方…

    JavaScript 2023年6月11日
    00
  • 编程语言JavaScript简介

    编程语言JavaScript简介 JavaScript的概述 JavaScript是一种Web前端开发中经常用到的编程语言,也是一种具有广泛应用的脚本语言。它可以与HTML和CSS合作,用于构建交互式的网站和Web应用程序,也可以在后端服务器上运行。 JavaScript最初由网景公司(Netscape)的 Brendan Eich 开发,于1995年发布,…

    JavaScript 2023年5月18日
    00
  • 一个基于vue3+ts+vite项目搭建初探

    下面是关于“一个基于vue3+ts+vite项目搭建初探”的完整攻略。 1. 安装vite 首先,我们需要安装vite,可以使用npm或yarn进行安装,输入以下命令: npm install -g vite # npm安装 # 或 yarn global add vite # yarn安装 这里我们选择使用npm进行安装。 2. 创建项目 在一个合适的目录…

    JavaScript 2023年6月11日
    00
  • JavaScript前端面试组合函数

    JavaScript前端面试中,组合函数是一个常见的考点,如果能够掌握组合函数的概念、实现及应用,能够极大地提高我们面试的成功率。本篇文章将会详细讲解“组合函数”的相关知识点,并提供两个示例来进行说明。 什么是组合函数 组合函数指的是将多个函数组合成一个新的函数,新函数会按照一定的顺序调用这些子函数,并将每个子函数的返回值作为参数传递给下一个函数。组合函数可…

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