为什么从时钟开始练 Web
数字时钟是 Web 入门的最佳小项目:它小(一个 HTML 文件就够)、即时反馈(数字每秒跳动)、用到了 Web 三大件(HTML 结构、CSS 样式、JavaScript 动态)。
做完时钟,你就掌握了 Web 开发最核心的三件事:改 DOM、定时执行、用 Date 对象。这三件事学会了,留言板、待办清单、天气卡片都能写。
时钟是 Web 版的"Hello World"——但比 Hello World 有意思多了。
本文核心知识点
- Date 对象拿当前时间。
- setInterval每秒执行。
- DOM 更新改页面文字。
- padStart补零。
HTML 骨架:一个大号数字
先写 HTML 骨架,放一个 div 用来显示时间:
<div id="clock">00:00:00</div>
就这一行。JavaScript 会把里面的文字改成当前时间。
CSS 样式:让它好看
#clock {
font-size: 80px;
font-family: monospace;
text-align: center;
margin-top: 100px;
color: #1E5FA8;
}
大字号、等宽字体、居中,看起来像一个真的时钟。
JavaScript:拿到当前时间
浏览器内置 Date 对象,new Date() 就拿到当前时间:
function updateClock() {
const now = new Date();
const h = String(now.getHours()).padStart(2, "0");
const m = String(now.getMinutes()).padStart(2, "0");
const s = String(now.getSeconds()).padStart(2, "0");
document.getElementById("clock").textContent = h + ":" + m + ":" + s;
}
updateClock();
padStart(2, "0") 保证 9 点显示成 "09" 而不是 "9"。打开页面你会看到当前时间。
setInterval:让它每秒更新
现在时钟不会动。加一行 setInterval 让它每秒跑一次 updateClock:
setInterval(updateClock, 1000);
1000 毫秒 = 1 秒。打开页面,数字每秒跳动——一个实时走动的时钟就做完了。
加日期、加样式切换
进阶玩法:
- 加一行显示今天是几月几日星期几。
- 加一个按钮,点一下在浅色和深色主题之间切换。
- 加一个闹钟功能,到点播放提示音。
每加一个功能,你就多学一个 Web 知识点。
本节用到的核心结构
- new Date()当前时间。
- padStart两位数补零。
- setInterval每秒执行。
- textContent改页面文字。
从时钟到留言板
时钟做完了,下一步可以做:
- 留言板:输入框 + 按钮 + 列表,点按钮把留言加到列表里。
- 待办清单:加任务、勾掉、删除。
- 天气预报卡:调一个公开 API 显示今天天气。
这些项目都是"读用户输入 → 改页面 DOM"的循环,和时钟是同一个套路。学会一个,后面都通。
Web 开发入门快,是因为写一行代码刷新就能看到效果。