一、前言
setTimeout(function, milliseconds) 在等待指定的毫秒数后执行函数。setInterval(function, milliseconds) setTimeout()相同,但会重复执行。
二、时间事件
窗口对象允许在指定的时间间隔执行代码。时间间隔称为定时事件。
1. setTimeout() 方法
- window.setTimeout(function,milliseconds);
window.setTimeout() 方法可以不用窗口window前缀编写。
第一个参数是要执行的函数,第二个参数指示执行前的毫秒数。
- <!DOCTYPEhtml>
- <htmllang="en">
- <head>
- <metacharset="UTF-8">
- <title>项目</title>
- </head>
- <bodystyle="background-color:aqua;\\">
- <p>点击"试试".等3秒,这个页面将提示"Hello".</p>
- <buttononclick="setTimeout(myFunction,3000);">试试</button>
- <script>
- functionmyFunction(){
- alert('Hello');
- }
- </script>
- </body>
- </html>
如何停止执行?
clearTimeout() 方法停止指定的函数setTimeout()的执行。
语法:
- window.clearTimeout(timeoutVariable)
window.clearTimeout() 方法可以不用窗口window前缀编写。
clearTimeout() 方法使用setTimeout()返回的变量。
- myVar=setTimeout(function,milliseconds);
- clearTimeout(myVar);
如果该函数尚未被执行,则可以通过调用 clearTimeout() 方法:
例:
- <!DOCTYPEhtml>
- <htmllang="en">
- <head>
- <metacharset="UTF-8">
- <title>项目</title>
- </head>
- <bodystyle="background-color:aqua;">
- <p>点击"试试".等3秒。这个页面将出现一个"Hello".</p>
- <p>单击“停止”以阻止第一个功能执行。</p>
- <p>(您必须在3秒钟之前单击“停止”。)</p>
- <buttononclick="myVar=setTimeout(myFunction,3000)">试试</button>
- <buttononclick="clearTimeout(myVar)">停止</button>
- <script>
- functionmyFunction(){
- alert("Hello");
- }
- </script>
- </body>
- </html>
2. setInterval() 方法
setInterval() 方法在给定的时间间隔内重复给定的函数。
- window.setInterval(function,milliseconds);
window.setInterval() 方法可以不用窗口window前缀编写。
第一个参数是要执行的函数。
第二个参数指示每次执行之间的时间间隔的长度。
例:
执行一个称为“myTimer”的函数,每隔二秒(像一个数字表)。
- <!DOCTYPEhtml>
- <htmllang="en">
- <head>
- <metacharset="UTF-8">
- <title>项目</title>
- </head>
- <bodystyle="background-color:aqua;">
- <p>Ascriptonthispagestartsthisclock:</p>
- <pid="demo"></p>
- <script>
- varmyVar=setInterval(myTimer,1000);
- functionmyTimer(){
- vard=newDate();
- document.getElementById("demo").innerHTML=d.toLocaleTimeString();
- }
- </script>
- </body>
- </html>
(一秒钟等于1000毫秒)。
如何停止执行?
clearInterval() 方法停止指定的函数setInterval()的执行。
- window.clearInterval(timerVariable)
window.clearInterval() 方法可以不用窗口window前缀编写。
clearInterval() 方法使用从setInterval()返回的变量 。
- <!DOCTYPEhtml>
- <htmllang="en">
- <head>
- <metacharset="UTF-8">
- <title>项目</title>
- </head>
- <bodystyle="background-color:aqua;">
- <p>Ascriptonthispagestartsthisclock:</p>
- <pid="demo"></p>
- <buttononclick="clearInterval(myVar)">停止</button>
- <script>
- varmyVar=setInterval(myTimer,1000);
- functionmyTimer(){
- vard=newDate();
- document.getElementById("demo").innerHTML=d.toLocaleTimeString();
- }
- </script>
- </body>
- </html>
代码解析:
运行效果:
三、总结
本文基于JavaScript基础,介绍了JavaScript 时间事件 setTimeout(),setInterval() 方法,这两种方法的语法,实际用法和区别。以及如何去启动定时器,停止定时器,通过详细案例分析。运行效果图的展示。进行了详细的讲解。代码很简单,希望能够帮助你学习。
希望大家可以根据文章的内容,积极尝试,有时候看到别人实现起来很简单,但是到自己动手实现的时候,总会有各种各样的问题,切勿眼高手低,勤动手,才可以理解的更加深刻。
使用JavaScript 语言,方便大家更好理解,希望对大家的学习有帮助。
本文转载自微信公众号「前端进阶学习交流」,可以通过以下二维码关注。转载本文请联系前端进阶学习交流公众号。







