
JavaScript定时器用法详解
5星
- 浏览量: 0
- 大小:None
- 文件类型:PDF
简介:
本文章详细解析了JavaScript中定时器的相关使用方法,包括setTimeout和setInterval等常用函数的介绍及应用场景示例。
JavaScript定时器是编程中用于控制程序执行时机的重要工具,它们允许开发者在特定的时间间隔或延迟后执行特定的函数或任务。本段落将详细讲解JavaScript中的两种主要定时器:`setInterval()` 和 `setTimeout()`,以及如何正确使用它们。
1. 循环执行定时器:`setInterval()`
- `setInterval()` 方法用于重复执行一个函数,每次执行之间有固定的延迟时间。语法如下:
```javascript
var timeid = window.setInterval(functionNameOrExpression, delay);
```
- 参数:
- `functionNameOrExpression`:要执行的函数名或函数表达式。
- `delay`:延迟时间,以毫秒为单位。
- 返回值:`timeid` 是一个唯一标识符,可用于通过 `clearInterval()` 停止定时器。
示例:
```javascript
每隔1秒打印一次
var timer = setInterval(function() {
console.log(每隔1秒执行);
}, 1000);
清除定时器
clearInterval(timer);
```
2. 一次性定时器:`setTimeout()`
- `setTimeout()` 方法用于在指定的延迟后仅执行一次函数。语法如下:
```javascript
var timeoutId = window.setTimeout(functionNameOrExpression, delay);
```
- 参数同 `setInterval()`,但`setTimeout()` 仅执行一次。
- 示例:
```javascript
2秒后执行
setTimeout(function() {
console.log(2秒后执行);
}, 2000);
清除一次性定时器(通常不需要,因为只执行一次)
clearTimeout(timeoutId);
```
使用定时器时需要注意以下几点:
- **防止定时器累加**:在设置新的定时器之前,应该先清除已有的定时器,避免多个定时器同时运行。
- **确保内存管理**:当不再需要定时器时,记得使用 `clearInterval()` 或 `clearTimeout()` 清除,以释放内存资源。
下面展示两个实际应用示例:
**示例1:秒表计时**
此示例使用 `setInterval()` 创建一个简单的秒表,用户可以开启、停止和清零计时。
```html
0 秒
```
```javascript
JavaScript 部分
var btn1 = document.getElementById(btn1);
var btn2 = document.getElementById(btn2);
var btn3 = document.getElementById(btn3);
var totalTime = document.getElementById(totalTime);
var second = 0;
var timer = null;
开启计时
btn1.onclick = function() {
clearInterval(timer);
timer = setInterval(function() {
second++;
totalTime.innerHTML = second;
}, 1000);
}
结束计时
btn2.onclick = function() {
clearInterval(timer);
}
时间清零
btn3.onclick = function() {
clearInterval(timer);
second = 0;
totalTime.innerHTML = second;
}
```
**示例2:节假日倒计时**
这个示例使用 `setTimeout()` 实现节假日倒计时,每当节假日来临,会显示倒计时。
```html
全部评论 (0)


