一、定时器
定时器:定时器可以设定时间自动的做某件事情。定时器是一种方法,不是对象,定时器属于 window 对象。
JavaScript 中有两种定时器:
-
setTimeout():指定时间后执行一段代码(延迟执行)。
-
setInterval():每隔一段时间执行一段代码(间隔执行)。
二、案例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script src="../js/tool.js"></script>
<style>
* {
margin: 0;
padding: 0;
}
#bobo {
margin: 200px auto;
width: 200px;
}
#box {
height: 50px;
border: 1px solid;
font-size: 20px;
text-align: center;
line-height: 50px;
}
#bobo>:last-child {
width: 100%;
display: flex;
justify-content: space-around;
}
button {
margin-top: 10px;
width: 90px;
height: 30px;
}
</style>
</head>
<body>
<div id="bobo">
<div id="box"></div>
<div>
<button id="btn1">开始</button>
<button id="btn2">停止</button>
</div>
</div>
<script>
var arr = ["q", "w", "e", "r", "t", "y", "u", "i", "o", "p", "a", "s", "d", "f", "g", "h", "j", "k", "l", "z", "x", "c", "v", "b", "n", "m"] //创建数组
var box = document.getElementById("box") //获取节点
var btn1 = document.getElementById("btn1")
var btn2 = document.getElementById("btn2")
var itmer = null //存定时器的值
btn1.onclick = function () { //给按钮用一个点击事件
clearInterval(itmer) //清除上一个定时器
itmer = setInterval(() => { //点击按钮触发定时器
box.innerHTML = arr[randomNum(0, arr.length - 1)]
}, 0)
}
btn2.onclick = function () { //清除定时器
clearInterval(itmer)
}
</script>
</body>
</html>
执行结果: