JavaScript 计时事情


1
2
3
4
5
6
7
8
9
10
11
12

JavaScript 一个设定的时刻距离之后来履行代码

咱们称之为计时事情


JavaScript 计时事情

经过运用 JavaScript,咱们有才能作到在一个设定的时刻距离之后来履行代码,而不是在函数被调用后当即履行。咱们称之为计时事情。

在 JavaScritp 中运用计时事情是很简略的,两个要害办法是:

  • setInterval() - 距离指定的毫秒数不停地履行指定的代码。
  • setTimeout() - 暂停指定的毫秒数后履行指定的代码

Note: setInterval() 和 setTimeout() 是 HTML DOM Window目标的两个办法。


setInterval() 办法

setInterval() 距离指定的毫秒数不停地履行指定的代码

语法

window.setInterval("javascript function",milliseconds);

window.setInterval() 办法能够不运用window前缀,直接运用函数setInterval()

setInterval() 第一个参数是函数(function)。

第二个参数距离的毫秒数

留意: 1000 毫秒是一秒。

实例

每三秒弹出 "hello" :

setInterval(function(){alert("Hello")},3000);

测验一下 »

实例展现了怎么运用 setInterval() 办法,可是每三秒弹出一次对用户体会并不好。

以下实例将显现当时时刻。 setInterval() 办法设置每秒钟履行一次代码,便是手表相同。

实例

显现当时时刻

var myVar=setInterval(function(){myTimer()},1000);

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

测验一下 »


怎么中止履行?

clearInterval() 办法用于中止 setInterval() 办法履行的函数代码。

语法

window.clearInterval(intervalVariable)

window.clearInterval() 办法能够不运用window前缀,直接运用函数clearInterval()

要运用 clearInterval() 办法, 在创立计时办法时你有必要运用全局变量:

myVar=setInterval("javascript function",milliseconds);

然后你能够运用clearInterval() 办法来中止履行。

实例

以下比如,咱们添加了 "Stop time" 按钮:

<p id="demo"></p>
<button onclick="myStopFunction()">Stop time</button>

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

测验一下 »


setTimeout() 办法

语法

window.setTimeout("javascript 函数",毫秒数);

setTimeout() 办法会回来某个值。在上面的句子中,值被储存在名为 t 的变量中。假设你期望撤销这个 setTimeout(),你能够运用这个变量名来指定它。

setTimeout() 的第一个参数是含有 JavaScript 句子的字符串。这个句子或许比如 "alert('5 seconds!')",或许对函数的调用,比如 alertMsg()"。

第二个参数指示从当时起多少毫秒后履行第一个参数。

提示:1000 毫秒等于一秒。

实例

等候3秒,然后弹出 "Hello":

setTimeout(function(){alert("Hello")},3000);

测验一下 »


怎么中止履行?

clearTimeout() 办法用于中止履行setTimeout()办法的函数代码。

语法

window.clearTimeout(timeoutVariable)

window.clearTimeout() 办法能够不运用window 前缀。

要运用clearTimeout() 办法, 你有必要在创立超时办法中(setTimeout)运用全局变量:

myVar=setTimeout("javascript function",milliseconds);

假如函数还未被履行,你能够运用 clearTimeout() 办法来中止履行函数代码。

实例

以下是同一个实例, 可是添加了 "Stop the alert" 按钮:

var myVar;

function myFunction()
{
myVar=setTimeout(function(){alert("Hello")},3000);
}

function myStopFunction()
{
clearTimeout(myVar);
}

测验一下 »


Examples

更多实例

另一个简略的计时