前端开发上机面试题:1.点击开始依次开始倒计时 2.每次执行两个依次类推,直达执行完毕
时间: 2024-02-05 13:04:33 浏览: 139
好的,这是一个前端开发上机面试题。以下是我的思路和解决方案:
1. 在HTML中创建一个按钮,用于开始倒计时,并将其与一个计时器函数相关联。
2. 在JavaScript中,创建一个计时器函数,该函数每隔一秒钟执行一次,并更新一个全局变量,用于跟踪倒计时的时间。
3. 每当计时器函数执行时,我们将检查时间是否已耗尽,如果是,则停止计时器函数。
4. 当计时器函数停止时,我们将更新倒计时的文本,以显示下一个倒计时时间。然后,我们将再次启动计时器函数,以开始下一个倒计时。
5. 重复上述步骤,直到所有倒计时时间都已完成。
以下是一个简单的实现示例:
HTML代码:
```
<button id="startBtn">开始倒计时</button>
<p id="countdownText"></p>
```
JavaScript代码:
```
// 倒计时时间(以秒为单位)
const countdownTimes = [10, 8, 6, 4, 2];
// 当前倒计时的索引
let currentCountdownIndex = 0;
// 计时器函数
let timer;
// 获取DOM元素
const startBtn = document.getElementById('startBtn');
const countdownText = document.getElementById('countdownText');
// 按钮点击事件
startBtn.onclick = () => {
// 启动计时器
startTimer();
};
// 启动计时器函数
function startTimer() {
// 如果所有倒计时时间都已完成,则停止计时器函数
if (currentCountdownIndex >= countdownTimes.length) {
return;
}
// 获取当前倒计时时间
const currentCountdownTime = countdownTimes[currentCountdownIndex];
// 更新倒计时文本
countdownText.textContent = `倒计时:${currentCountdownTime}秒`;
// 启动计时器函数
timer = setInterval(() => {
// 更新倒计时时间
currentCountdownTime--;
// 如果时间已耗尽,则停止计时器
if (currentCountdownTime <= 0) {
clearInterval(timer);
currentCountdownIndex++;
startTimer();
} else {
// 更新倒计时文本
countdownText.textContent = `倒计时:${currentCountdownTime}秒`;
}
}, 1000);
}
```
希望这个解决方案对您有所帮助。
阅读全文