Rumah  >  Artikel  >  hujung hadapan web  >  Javascript计时器 - donghua-li的博客 - CSDN博客

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

一个新手
一个新手asal
2017-09-20 09:20:401384semak imbas

通过使用 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);

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

Atas ialah kandungan terperinci Javascript计时器 - donghua-li的博客 - CSDN博客. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn