欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

Javascript计时器 - donghua-li的博客 - CSDN博客

程序员文章站 2022-04-11 14:54:22
...

通过使用 JavaScript,我们有能力做到在一个设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行。我们称之为计时事件。提供了两种计时器的方法如下:

  1. window.setInterval(); 这个方法就是在一个周期内反复执行一直到窗口关闭或者 clearInterval()
    window.setTimeout(); 延迟执行内容

setInterval()的使用方法:

setInterval(code,millisec); 
code:可以是方法名,如果是方法不要加小括号。同时也可以是字符串用双引号将方法括起来。setInterval(“setCode()”,1000);或者setInterval(setCode,1000); 
millisec:是毫秒数,就是隔了多久执行

代码如下:

 var p1 = document.getElementById("p");    
 var n = 0;    
 var data = ["4234","343440"];    
 var rows = 0;    
 var cols = 0;    
 function setCode(){
        if(cols < data[rows].length){
            p1.innerHTML += data[rows][cols];
            cols++;
        }else if(rows < data.length){
            p1.innerHTML += "</br>";
            rows++;
            cols = 0;
        }else {
            clearInterval(timer);
        }
    }    var timer = setInterval(setCode,500);

setTimeout和setInterval用法是一样的的。


那么在计时器中能否传递参数呢?答案是不能的那么怎么办呢,推荐使用匿名函数。

代码如下:

   var person = {name: "peng", age: 23};    
   function getPerson(person){
        alert(person.name);
    }    var timer = setInterval(function(){
        getPerson(person);
    },1000);

就是在定义定时器是在重新写一个函数在函数里面去调用方法。
当然也可以直接将函数和参数用”“括起来 ,但是这样不能周期性改变参数的值.

以上就是Javascript计时器 - donghua-li的博客 - CSDN博客的详细内容,更多请关注其它相关文章!