当前位置:首页 > JavaScript

js实现间隔

2026-02-01 18:41:03JavaScript

使用 setTimeout 实现间隔

setTimeout 是 JavaScript 中用于在指定时间后执行一次代码的函数。通过递归调用 setTimeout 可以实现间隔执行的效果。

function repeatFunction() {
  console.log('This will run every 2 seconds');
  setTimeout(repeatFunction, 2000);
}

setTimeout(repeatFunction, 2000);

使用 setInterval 实现间隔

setInterval 是专门用于间隔执行的函数,它会按照指定的时间间隔重复执行代码。

js实现间隔

setInterval(function() {
  console.log('This will run every 1 second');
}, 1000);

使用 async/await 实现间隔

在异步函数中可以使用 Promise 和 setTimeout 结合来实现间隔执行。

async function delayedLoop() {
  while(true) {
    console.log('Running every 3 seconds');
    await new Promise(resolve => setTimeout(resolve, 3000));
  }
}

delayedLoop();

使用 requestAnimationFrame 实现间隔

requestAnimationFrame 更适合需要与屏幕刷新率同步的间隔执行,通常用于动画。

js实现间隔

function animate() {
  console.log('Running at screen refresh rate');
  requestAnimationFrame(animate);
}

requestAnimationFrame(animate);

清除间隔执行

对于 setInterval 和 setTimeout 创建的间隔执行,需要使用 clearInterval 和 clearTimeout 来清除。

const intervalId = setInterval(() => {
  console.log('This will stop after 5 seconds');
}, 1000);

setTimeout(() => {
  clearInterval(intervalId);
}, 5000);

使用 Generator 函数实现间隔

Generator 函数可以配合 yield 实现更灵活的间隔控制。

function* intervalGenerator() {
  while(true) {
    yield new Promise(resolve => setTimeout(resolve, 1500));
    console.log('Running every 1.5 seconds');
  }
}

const gen = intervalGenerator();
function run() {
  gen.next().value.then(run);
}
run();

标签: 间隔js
分享给朋友:

相关文章

js实现轮播图

js实现轮播图

轮播图实现方法 基础HTML结构 <div class="slider"> <div class="slides"> <img src="image1.jpg…

js实现论坛

js实现论坛

实现论坛的基本功能 使用JavaScript实现一个论坛需要结合前端和后端技术。前端可以使用React、Vue或Angular等框架,后端可以选择Node.js配合Express或Koa框架。数据库可…

js实现交换

js实现交换

交换变量的方法 在JavaScript中,交换两个变量的值有多种方法。以下是常见的几种实现方式: 使用临时变量 通过引入一个临时变量来存储其中一个变量的值,实现交换: let a = 1; le…

js节流实现

js节流实现

节流的概念 节流(Throttle)是一种限制函数执行频率的技术,确保函数在一定时间间隔内只执行一次。常用于滚动事件、窗口调整等高频触发的场景。 基础实现方法 使用时间戳判断是否执行函数: fun…

js 实现日历

js 实现日历

实现日历的基本思路 日历的核心功能是展示日期,并允许用户进行日期选择或导航。JavaScript 可以动态生成日历的 HTML 结构,并处理用户交互逻辑。 基础日历结构 日历通常包含头部(显示月份和…

js实现左右滑动

js实现左右滑动

实现左右滑动的 JavaScript 方法 监听触摸事件 通过 touchstart、touchmove 和 touchend 事件来检测用户的手势操作。记录触摸的起始位置和移动距离,判断滑动方向。…