当前位置:首页 > JavaScript

js 实现倒数

2026-02-01 15:01:34JavaScript

js 实现倒数

实现 JavaScript 倒数功能

使用 setInterval 实现倒数计时器

let count = 10; // 设置初始倒数值
const timer = setInterval(() => {
  console.log(count);
  count--;
  if (count < 0) {
    clearInterval(timer);
    console.log('倒数结束');
  }
}, 1000); // 每秒执行一次

使用 setTimeout 递归实现倒数

function countdown(seconds) {
  console.log(seconds);
  if (seconds > 0) {
    setTimeout(() => countdown(seconds - 1), 1000);
  } else {
    console.log('倒数结束');
  }
}
countdown(10); // 从10开始倒数

带有暂停和继续功能的倒数计时器

let count = 10;
let timer;
let isPaused = false;

function startCountdown() {
  timer = setInterval(() => {
    if (!isPaused) {
      console.log(count);
      count--;
      if (count < 0) {
        clearInterval(timer);
        console.log('倒数结束');
      }
    }
  }, 1000);
}

function togglePause() {
  isPaused = !isPaused;
}

startCountdown();
// 调用 togglePause() 可以暂停或继续倒数

使用 Promise 和 async/await 实现倒数

async function asyncCountdown(seconds) {
  for (let i = seconds; i >= 0; i--) {
    await new Promise(resolve => setTimeout(resolve, 1000));
    console.log(i);
  }
  console.log('倒数结束');
}
asyncCountdown(10);

显示在页面上的倒数计时器

HTML:

js 实现倒数

<div id="countdown">10</div>
<button id="startBtn">开始</button>
<button id="pauseBtn">暂停</button>

JavaScript:

let count = 10;
let timer;
let isRunning = false;

document.getElementById('startBtn').addEventListener('click', () => {
  if (!isRunning) {
    isRunning = true;
    timer = setInterval(() => {
      count--;
      document.getElementById('countdown').textContent = count;
      if (count <= 0) {
        clearInterval(timer);
        isRunning = false;
      }
    }, 1000);
  }
});

document.getElementById('pauseBtn').addEventListener('click', () => {
  clearInterval(timer);
  isRunning = false;
});

这些方法提供了从简单到复杂的各种倒数实现方式,可以根据具体需求选择合适的方案。

标签: 倒数js
分享给朋友:

相关文章

js实现vue

js实现vue

Vue.js 的基本实现方法 在 JavaScript 中实现 Vue.js 的功能,可以通过直接引入 Vue 库或使用现代构建工具(如 Vite 或 Webpack)。以下是几种常见的实现方式:…

js实现继承

js实现继承

原型链继承 通过将子类的原型指向父类的实例实现继承。子类实例可以访问父类原型上的属性和方法。 function Parent() { this.name = 'parent'; } Parent…

js如何实现继承

js如何实现继承

原型链继承 通过将子类的原型指向父类的实例实现继承。子类实例能够访问父类原型上的属性和方法。 function Parent() { this.name = 'parent'; } Parent…

jquery js

jquery js

jQuery 简介 jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互。它兼容多种浏览器,提供易于使用的 API,使开发者能够更高…

js实现二叉树

js实现二叉树

二叉树的基本概念 二叉树是一种树形数据结构,每个节点最多有两个子节点,分别称为左子节点和右子节点。二叉树的常见操作包括插入、删除、遍历等。 二叉树的节点定义 在JavaScript中,二叉树的节点可…

js实现驼峰

js实现驼峰

实现驼峰命名的几种方法 使用正则表达式和字符串替换 通过正则表达式匹配字符串中的特定模式(如下划线或短横线),并将其后的字母转换为大写,同时移除分隔符。 function toCamelCase(s…