一次性定时器:setTimeout(fun,time);回调函数等待time时间后,执行一次!
参数:fun: 需要执行的回调函数/time等待的时间
永久定时器:setInterval(fun,time);回调函数每隔time时间后,执行一次!
参数:fun:需要执行的回调函数/间隔的时间/time间隔的时间
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>定时器</title> <style> span { height: 30px; display: inline-block; border-color: #333; } h1 { vertical-align: middle; } </style> </head> <body> <h1> 距离下次休假还有<span id="time"></span> </h1> <script> var finalDate=new Date("2020/1/1 00:00"); //计时结束的时间点 function getTime() { var nowDate=new Date(); //程序开始运行的时间点 console.log(finalDate-nowDate); //获取结束时间到当前时间的毫秒数 var ms=finalDate-nowDate; //从程序开始执行的时间点到目标时间点所需的毫秒数 //将毫秒数转换为天数,小时数,分钟数,秒数 //计算; //计算到结束时间所需的总的秒数 var s=parseInt(ms/1000); //计算秒数 var d=parseInt(s/(24*60*60)); //计算剩余的天数:总的秒数 除以 一天所需的秒数,取整! var h=parseInt(s%(24*60*60)/(60*60)); //计算剩余的小时数=总的秒数内不足一天的秒数 除以 一个小时所需的秒数 var m=parseInt(s%(60*60)/60); //计算剩余的分钟数=总秒数 % 一个小时的秒数 除以 一分钟所需的秒数 s=s%60; //计算秒数 总的秒数按每分钟的秒数取余 //将计算得出的值放到页面对应的元素中 var str=d+"天"+h+"时"+m+"分钟"+s+"秒"; time.innerHTML=str; } //设置定时器,反复调用上述函数 setInterval(getTime,1000); </script> </body> </html>
使用:每个定时器启动之后都有一个编号,可以用一个变量保存!
停止定时器:clearInterval(order);//停止编号对应的定时器,保存的值还在。
注意:如果一个定时器,不需要使用了。需要先停止,然后释放序号。