您的当前位置:首页正文

JavaScript两种计时器的实例讲解

2020-11-27 来源:步旅网

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

  1. window.setInterval(); 这个方法就是在一个周期内反复执行一直到窗口关闭或者 clearInterval()
  2. 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);

    就是在定义定时器是在重新写一个函数在函数里面去调用方法。

    当然也可以直接将函数和参数用“”括起来 ,但是这样不能周期性改变参数的值.

    总结

    显示全文