js——定时器

Posted scmath

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js——定时器相关的知识,希望对你有一定的参考价值。

Window setInterval() 方法

  • setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。

  • setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。

提示: 如果你只想执行一次可以使用 setTimeout() 方法。

语法

    setInterval(code, milliseconds);
    setInterval(function, milliseconds, param1, param2, ...)

                            
    code/function:           必需。要调用一个代码串,也可以是一个函数。
    milliseconds:            必须。周期性执行或调用 code/function 之间的时间间隔,以毫秒计。
    param1, param2, ... :        可选。 传给执行函数的其他参数(IE9 及其更早版本不支持该参数)。
                                 返回一个 ID(数字),可以将这个ID传递给clearInterval(),clearTimeout() 以取消执行。

显示当前时间( setInterval() 方法会每秒执行一次函数,类似手表功能):

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<body>

<p>显示当前时间:</p>
<p id="demo"></p>

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

function myTimer() {
    var d = new Date();
    ;var t = d.toLocaleTimeString();  //时区转换
    document.getElementById("demo").innerHTML = d;
}
</script>

</body>
</html>

使用 clearInterval() 来停止 setInterval 的执行:

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);
}

定时执行某个函数或代码块,注意返回值,用来停止任务。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<body>

<p>显示当前时间:</p>
<p id="demo"></p>

<button onclick="myStopFunction()">停止时间</button>
<button onclick="startFunction()">开始时间</button>
<script>
var myVar ;
startFunction();
    
function myTimer() {
    var d = new Date();
    var t = d.toLocaleTimeString();
    document.getElementById("demo").innerHTML = t;
}

function myStopFunction() {
    clearInterval(myVar);
}
    
function startFunction() {
    myVar = setInterval(function(){ myTimer() }, 1000);
}
</script>

</body>
</html>

以上是关于js——定时器的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段9——JS中的面向对象编程

js代码片段: utils/lcoalStorage/cookie

JS代码片段:一个日期离现在多久了

如何在使用片段和计时器的选项卡式活动上更新 UI

测试片段不执行定时器或示例超时

js常用代码片段(更新中)