JavaScript 时间



时间事件

窗口对象允许在指定的时间间隔执行代码.

些时间间隔称为定时事件.

两个关键的方法来使用JavaScript:

  • setTimeout(function, milliseconds) 在等待指定的毫秒数后执行函数。
  • setInterval(function, milliseconds) setTimeout()相同,但会重复执行。

setTimeout() 和 setInterval() HTML DOM Window 对象的两个方法.

setTimeout() 方法

window.setTimeout(function, milliseconds);

window.setTimeout() 方法可以不用窗口window前缀编写。

第一个参数是要执行的函数.

第二个参数指示执行前的毫秒数.

<button onclick="setTimeout(myFunction, 3000)">Try it</button>

<script>
function myFunction() {
    alert('Hello');
}
</script>

让我试试


如何停止执行?

clearTimeout() 方法停止指定的函数setTimeout()的执行.

window.clearTimeout(timeoutVariable)

window.clearTimeout() 方法可以不用窗口window前缀编写。

clearTimeout() 方法使用setTimeout()返回的变量:

myVar = setTimeout(function, milliseconds);
clearTimeout(myVar);

如果该函数尚未被执行,则可以通过调用 clearTimeout() 方法:

<button onclick="myVar = setTimeout(myFunction, 3000)">试试</button>

<button onclick="clearTimeout(myVar)">停止</button>

让我试试


setInterval() 方法

setInterval() 方法在给定的时间间隔内重复给定的函数.

window.setInterval(function, milliseconds);

window.setInterval() 方法可以不用窗口window前缀编写。

第一个参数是要执行的函数。

第二个参数指示每次执行之间的时间间隔的长度

这个例子执行一个称为“myTimer”的函数,每隔二秒(像一个数字表)。

var myVar = setInterval(myTimer, 1000);

function myTimer() {
    var d = new Date();
    document.getElementById("demo").innerHTML = d.toLocaleTimeString();
}

让我试试

一秒钟等于1000毫秒。


如何停止执行?

clearInterval() 方法停止指定的函数setInterval()的执行.

window.clearInterval(timerVariable)

window.clearInterval() 方法可以不用窗口window前缀编写.

clearInterval() 方法使用从setInterval()返回的变量 :

<p id="demo"></p>

<button onclick="clearInterval(myVar)">Stop time</button>

<script>
var myVar = setInterval(myTimer, 1000);
function myTimer() {
    var d = new Date();
    document.getElementById("demo").innerHTML = d.toLocaleTimeString();
}
</script>

让我试试