当前位置:网站首页>延时函数-定时器
延时函数-定时器
2022-08-02 14:20:00 【铃儿响叮当不响】
定时器-延时函数
(1)JavaScript内置的一个用来让代码延缓执行的函数叫 setTimeout()
语法: setTimeout(回调函数,等待的毫秒数)
(2)setTimeout仅仅只执行一次,所有可以理解为就是把一段代码延迟执行,平时省略window
let timer = setTimeout(回调函数,等待的毫秒数)
清除定时器语法:clearTimeout(timer)
一个小栗子:
3秒前点击按钮则页面不会弹出111(点击按钮则清除延时函数)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
</style>
</head>
<body>
<button>点击</button>
<script>
let btn = document.querySelector('button')
btn.addEventListener('click',function(){
clearTimeout(timer)
})
//延迟函数仅仅执行一次
let timer = setTimeout(function(){
alert(111)
},3000)
</script>
</body>
</html>
(3)结合递归函数可以使用setTimeout实现setInterval(间歇函数)一样的功能
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div></div>
<script>
let div = document.querySelector('div')
function fn() {
// 得到当前时间
div.innerHTML = new Date().toLocaleString()
setTimeout(fn,1000)
}
fn()
</script>
</body>
</html>
(4)间歇setInterval的特征是重复执行,首次执行会延迟
setTimeout的特征是延时执行,只执行一次
setTimeout可以结合递归函数实现setInterval一样的功能
clearTimeout清除由setTimeout创建的定时任务
边栏推荐
猜你喜欢
随机推荐
smart rtmpd web 接口说明
【无标题】
【网络参考模型】
【TCP 和 UDP 基本原理】
【面经】被虐了之后,我翻烂了equals源码,总结如下
【QMT】给QMT量化交易软件安装和调用第三方库(举例通达信pytdx,MyTT,含代码)
电设3----脉冲信号测试仪
Mediasoup 杂谈(待完善)
golang八股文整理(持续搬运)
IIR滤波器设计之冲激响应不变法与双线性变换法
DOM —— 事件绑定与解绑
LAMP环境 源码编译安装(Apache 2.4.52 +mysql 8.0.28+php 8.1.3)
WebRTC 中有关 Media Stream & Track & Channel 之间的关系
MATLAB文件操作
Redis6
DOM - Event Mechanism and Event Chain
C语言的基本程序结构详细讲解
DOM - Event Object
[Time series model] AR model (principle analysis + MATLAB code)
DOM —— 事件代理