倒计时工具
设置目标日期,实时显示剩余时间,支持多个倒计时同时运行
关于倒计时工具
- 支持同时运行最多5个倒计时,适用于节日倒计时、项目截止日期、会议提醒等场景
- 支持正计时模式(从0开始计时),适合记录已工作时长、会议时长等
- 所有倒计时数据保存在浏览器本地,刷新页面不丢失
操作说明
- 点击「新建倒计时」,填写名称、目标时间和模式(倒计时/正计时)
- 每个倒计时卡片右上角有删除按钮,可单独删除
- 倒计时到达目标时间时,卡片会高亮显示并播放提示音
- 正计时模式下,从0开始计时,无结束时间
注意事项
- 最多同时运行5个倒计时,超出后需删除旧的才能新建
- 数据保存在浏览器 localStorage,清除浏览器数据会丢失所有倒计时
- 所有处理均在浏览器本地完成,不会上传任何数据
- 切换到其他标签页后计时仍在后台运行,精度可能受浏览器节流影响
时间管理知识详解
倒计时的常见应用场景
| 场景 | 模式 | 示例 |
|---|---|---|
| 节日/纪念日 | 倒计时 | 距离春节还有 XX 天 |
| 项目截止日期 | 倒计时 | 距离版本发布还有 XX 小时 |
| 会议/演讲 | 倒计时 | 演讲剩余时间 |
| 工作时长记录 | 正计时 | 今天已工作 XX 小时 |
| 运动计时 | 正计时 | 跑步已进行 XX 分钟 |
时间计算原理
倒计时的核心是计算两个时间戳之间的差值:
// 计算剩余时间(毫秒)
const diff = targetTime - Date.now();
// 转换为天/时/分/秒
const days = Math.floor(diff / 86400000);
const hours = Math.floor((diff % 86400000) / 3600000);
const minutes = Math.floor((diff % 3600000) / 60000);
const seconds = Math.floor((diff % 60000) / 1000);
时区注意事项
- 本工具使用浏览器本地时间,目标时间也以本地时区为准
Date.now()返回 UTC 时间戳(毫秒),不受时区影响- 跨时区协作时,建议在名称中注明时区(如"发布时间 UTC+8")
- 夏令时切换可能导致倒计时出现1小时偏差,注意核对
场景示例 — 点击「填入」快速创建示例倒计时
距离元旦倒计时
自动计算距离下一个元旦(1月1日)的剩余时间
1小时会议倒计时
从现在起1小时后结束,适合控制会议时长
正计时(工作时长)
从现在开始正向计时,记录已工作时长